B减成一
利用差分数组,把前后差为正的数都加起来,这里a[0]要设置为1。

#include <iostream>
#define ll long longusing namespace std;int a[100005];int main(){int t;cin>>t;while(t--){int n;cin>>n;a[0] = 1;for(int i = 1; i <= n; i++){cin>>a[i];}ll ans = 0;for(int i  = 1; i <= n; i++){if(a[i] > a[i - 1]){ans += a[i] - a[i - 1];}}cout<<ans<<endl;}return 0;
}

这里再晒一下题解给的解释

原文章
减成一

思路:由于每次操作可以将一个区间内的数减一。如下图所示,通过计算出差分数组,操作可以转为先选取一个数减一再选取一个数加一。目标的差分数组也就变成了第一个数为1,其余为0的数组。因此,最快操作方式就是将差分数组第一个数减为1,其余减为0。即操作数为差分数组的正数之和减一。
题解代码,原链接同上

#include<stdio.h>
#define N 100005
long long f[N],a[N];
int main()
{freopen("input.txt","r",stdin);freopen("output.txt","w",stdout);long long t;scanf("%lld",&t);long long num=0;while(t--){long long n;scanf("%lld",&n);num+=n;long long sum=0;for(long long i=0;i<n;i++){scanf("%lld",&a[i]);if(i)f[i]=a[i]-a[i-1];elsef[i]=a[i];if(f[i]>0)sum+=f[i];}printf("%lld\n",sum-1);}
}

三角形
这里按照斐波那契数列进行分解,确实没问题,但是确实不懂为什么这样最大。
这里如果切割有剩余,那么为了防止剩下的一部分跟前面的某两个序列满足三角形条件,所以选择直接将剩余部分加到最后一段上

#include <iostream>
#define unsigned long long ullusing namespace std;ull a[93];int main(){int t;for(in i = 3; i < 93; i++){a[i] = a[i - 1] + a[i - 2];}cin>>t;while(t--){int n,ans = 0;cin>>n;for(int i = 1; a[i] <= x; i++){n -= a[i];ans++;}}
}

科林明伦杯 哈尔滨理工大学第十届程序设计竞赛 (补)相关推荐

  1. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛)---全题目+题解

    文章目录 A.点对最大值 B.减成一 C.面积 D.扔硬币 E.赛马 F.三角形 G.养花 H.直线 I.字典序 J.最大值 A.点对最大值 链接:https://ac.nowcoder.com/ac ...

  2. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) 题解

    "科林明伦杯"哈尔滨理工大学第十届程序设计竞赛(同步赛) 题解 萌新又来写题解啦 原题链接 B 减成一 题意:存在n个数,每次操作可以任选一个区间使得区间内的所有数字减一.问最少多 ...

  3. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) F

    F 三角形 链接:https://ac.nowcoder.com/acm/contest/5758/F 来源:牛客网 小明有一根长度为a的木棒,现在小明想将木棒分为多段(每段木棒长度必须为整数), 使 ...

  4. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) 点对最大值 dp

    链接:https://ac.nowcoder.com/acm/contest/5758/A 来源:牛客网 题目描述 这里有一棵树,每个点和每条边都存在一个价值.对于树上点对的价值,包括点对的起点和终点 ...

  5. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) E

    E 赛马 一天小明与他同学准备赛马,他们每人有n匹马,每匹马有一个固定的战力值,战力值高的马会战胜战力值低的马并赢得比赛.每匹马只能出场比赛一次.小明偷看到了他对手每匹马的出场顺序,小明在更改自己马出 ...

  6. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛)

    A.点对最大值 这里有一棵树,每个点和每条边都存在一个价值.对于树上点对的价值,包括点对的起点和终点以及路径上边权值之和,不包括路径上其他点值. 求这颗树上最大的点对价值为多少.点对至少需要两个点. ...

  7. 科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛)

    比赛网址传送门 目录 A 点对最大值 B 减成一 C 面积 D 扔硬币 E 赛马 F 三角形 G 养花 H 直线 I 字典序 J 最大值 A 点对最大值 求这个树的直径,已经见过三次了,还是没打出来, ...

  8. 科林明伦杯”哈尔滨理工大学第十届程序设计竞赛B(减成1)

    科林明伦杯"哈尔滨理工大学第十届程序设计竞赛 存在n个数,每次操作可以任选一个区间使得区间内的所有数字减一.问最少多少次操作,可以让所有数都变成1. 数据保证一定有解. 输入描述: 输入t, ...

  9. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛 E 赛马 python

    "科林明伦杯"哈尔滨理工大学第十届程序设计竞赛 E 赛马 python E 好家伙 田忌赛马真就 匹配就不解释了 思路,主要咱不止一匹马 所以就最好的比 对方比这个数小的即可 所以 ...

最新文章

  1. Linux学习笔记之文件管理和目录管理类命令
  2. Oracle RMAN 设置和配置(一)
  3. Android 利用ListView制作带竖线的多彩表格
  4. Spring Boot 2.x基础教程:使用JdbcTemplate访问MySQL数据库
  5. 中国国家气象局天气预报信息接口
  6. 蓝桥杯java最小公倍数_蓝桥杯算法训练 最大最小公倍数
  7. java 考试复习整理——JAVA类和类成员的修饰符
  8. 【C语言】编译预处理和宏(附带##介绍)
  9. 微软开源项目 NeuronBlocks:像搭积木一样构建 NLP 深度学习模型!
  10. pyboard使用心得记录-基于对sk6812的控制(欢迎补充)
  11. PMP-项目沟通管理
  12. 8237A DMA控制器简答
  13. [MATLAB]matlab鼠标操作画两圆,做出两圆的公切线
  14. Springboot2.6+thymeleaf实现png和jpg图片格式转换
  15. pygame之窗口大小调整
  16. HDU1814和平委员会
  17. ATT的SIM卡(GoPhone)连不上4G网络怎么办
  18. 圣诞树Easyx绘图
  19. HarmonyOS Connect伙伴峰会:鸿湖万联全栈式使能鸿蒙智联
  20. “应用程序配置不正确,应用程序未能启动” 错误的解决

热门文章

  1. 蜜蜂路线图c语言思路,打蜜蜂(c语言)(Hit the bee (C language)).doc
  2. HourGlass源码阅读
  3. 如何用计算机远程桌面连接不上,手把手教你电脑远程桌面无法连接怎么办
  4. SQLITE3插入、查询效率的优化方法
  5. Leetcode 14.最长公共前缀(Longest Common Prefix)
  6. linux手机内存碎片整理软件,Linux不需要磁盘碎片整理
  7. cisco ios enable password与enable secret设置详解
  8. linux下rpm包安装MySQL
  9. 小米怎么和计算机连接网络设置密码,小米3C路由器怎么设置密码?
  10. 怎么用python编写心形图案,python编程爱心形状turtle