求最小连续和(洛谷P1614题题解,Java语言描述)
题目要求
P1614题目链接
分析
既然是要求最小连续和,那就需要存储连续的M个数据,还需要保存最小的和以及当前的和。
先开循环,把M和数据读入M长度数组中,保存好数据,完成求和。
接下来就是后续处理了。
试想:如果我们不存储每个数,那后续就没法进行了……
所以每个数都要存储,但不能每次都全部折腾一遍,那怎么办呢?
就嘿嘿嘿,用类似循环队列的数组吧,只不过这个队列必然是满的,每次都是换下去一个而已。
怎么实现呢?其实很简单,就需要一个int类型的指针,标记最早进入数组的一个数据的索引就可以啦。
变更pointer的代码是pointer = (pointer+1)%range;
过程中的操作,多仔细一些就好啦。
AC代码(Java语言描述)
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num = scanner.nextInt(), range = scanner.nextInt(), sum = 0, pointer = 0, tempSum;int[] array = new int[range];for (int i = 0; i < range; i++) {int temp = scanner.nextInt();sum += temp;array[i] = temp;}tempSum = sum;for (int i = range; i < num; i++) {int temp = scanner.nextInt();tempSum = tempSum - array[pointer] + temp;array[pointer] = temp;pointer = (pointer+1)%range;if (tempSum < sum) {sum = tempSum;}}scanner.close();System.out.println(sum);}
}
求最小连续和(洛谷P1614题题解,Java语言描述)相关推荐
- 线性存储的最短平均检索时间(洛谷P1253题题解,Java语言描述)
题目要求 P1253题目链接 分析 很像 ~洛谷P1223题题解~,也是一种类似SJF的贪心法. 排个序,由于两个不大于10000的数,乘起来还是int,就使用int属性吧. 数据量小,所以Scann ...
- 队列模拟约瑟夫问题(洛谷P1996题题解,Java语言描述)
题目要求 P1996题目链接 分析 以前就研究过"约瑟夫环"问题: <单循环链表求解约瑟夫环问题(Java语言描述)> <杀人游戏~约瑟夫环(洛谷P1145题题解 ...
- 求子集元素之和(洛谷P2415题题解,Java语言描述)
题目要求 P2415题目链接 分析 这题我觉得--当个数学题做就好了嘛. 有一个数N的情况:result = 1 * N 有两个数N1.N2的情况:result = 2 * (N1+N2) 有三个数N ...
- 基于栈的后缀表达式求值(洛谷P1449题题解,Java语言描述)
题目要求 P1449题目链接 分析 给出后缀表达式求值,就相当于没了括号,而且很直接. 我们需要使用栈结构来完成任务. Java原装的栈使用了很多synchronized,导致性能不佳,但我们也就将就 ...
- 麦森数(洛谷P1045题题解,Java语言描述)
题目要求 题目链接 分析 这题挺经典的,快速幂取模算法,如果求出大数再取模就可能T掉. 之前有篇文章写了这个算法:<快速幂算法详解&&快速幂取模算法详解> 既然是Java, ...
- 贪心策略摘果子(洛谷P1478题题解,Java语言描述)
题目要求 P1478题目链接 分析 本题的低配版题目链接 → 题解 那个题就是纯水题没啥可写的,我除了贴代码无话可说,但这题吧,虽然不算难,但也可一说. 建议大家移步这里 → 精辟题解 这位爷写了本题 ...
- 试试把OJ题意抽象成物理模型(洛谷P1007题题解,Java语言描述)
题目要求 P1007题目链接 分析 这题干出的,真有毒... 要是有这种指挥官,也是醉了... 言归正传,这题其实是可以贪心求解的,但我们还可以更加666... 事实上,题干上面那一大篇基本在扯,关键 ...
- 枚举求解单词方阵(洛谷P1101题题解,Java语言描述)
题目要求 P1101题目链接 分析 可以用DFS做,但我立下了个Flag,所以就用了朴素的枚举来做.... 结果,我的天哪,做了好几个小时-- 其实这种地图题,真的适合 DFS or BFS or D ...
- 快速幂||取余运算【模板】(洛谷P1226题题解,Java语言描述)
题目要求 P1226题目链接 分析 标准的快速幂取模算法板子,之前这个算法我在这篇文章中讲过了:<快速幂算法详解&&快速幂取模算法详解>. 这里选择使用比较简单的API实现 ...
最新文章
- PCL深度图像(1)
- 拥有「人类智能」的全球首款有「思想」的机器人,活细胞培养的神经元
- 2019年2月26日 Unique Email Addresses、To Lower Case、Encode and Decode TinyURL
- 在UWP的按钮中使用Segoe MDL2 Assets图标
- Angular 依赖注入的学习笔记
- linux命令取数字前两位,linux中head命令使用详解(显示开头数量的文字块)
- Binder IPC的权限控制
- 用Excel表格神速写代码
- 归并算法(详细见解)
- 解决win10微软应用商店打不开的问题
- python编写直角三角形边长公式_python 打印直角三角形,等边三角形,菱形,正方形的代码...
- 行列式与矩阵树定理入门
- 防火墙的原理、主要技术、部署及其优缺点
- Windows cmd命令行操作技巧
- 控制算法和编程算法_算法中的编程公平性
- 祭出黑白共济战略,海信、TCL、创维、康佳能否打开增量消费市场?
- 马化腾和朱啸虎互怼之后,摩拜ofo合并可能性基本为零
- Spring Data Redis 实践
- 谈谈我的佛系增长之道
- 电子商务设计师考试心得