- 博客(2)
- 收藏
- 关注
原创 最大连续子段和
方法2:方法1中,在求子段和过程中有许多重复的操作,如:求第3~第5个数的和包含在求第2~第5个数和之间,显然,重复进行了求和操作。我们可以通过预处理,求出1~每个位置的和s[i],而s[i]=a[i]+s[i-1],可以一定程度上的减少求和运算,而对于子段[i,j]的子段和为s[j]-s[i](j>i).这样循环就可以变成双重循环。2.第1个数的子段和t=a[i],最大子段和 ans=a[1].。3.一重循环枚举第2~n个数:(1)求以当前数为最大子段和t。t+a[i] (t>=0,之前)
2025-01-18 13:59:46
365
原创 基础结构---【循环结构】
分析:要求找因数,所以因数判断条件是 原数%循环变量==0,输出 循环变量,所以使用 for 语句,从1~原数一一列举.要做的工作就是重复20次:拿起书——找位置——摆好书。分析:首先我们知道本题要使用while循环进行数位分离,依次判断每位是否等于x,外层循环一一列举每一个数。在C++中,提供了for,while,do-while三种循环结构。while(循环条件){
2025-01-15 15:03:49
398
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人