- 博客(5)
- 资源 (5)
- 收藏
- 关注
原创 最大子序列和
最大子序列和 直接上O(n) ll max_sum (int a[], int n) { ll s = 0; ll sum = 0; for (int i = 0; i < n; i ++) { if(sum >= 0) sum += a[i]; else sum = a[i]; if(sum > s) s = sum; } return s; }
2017-08-18 23:48:31 239
原创 数塔取数问题
数塔取数问题 由下往上一层一层的,取下一层与dp[i][j]相邻之中最大的,最后输出最顶端的值即为所求; // 核心 dp[i][j] = max(dp[i + 1][j], dp[i + 1][j + 1]) + dp[i][j]; #include #include #include #include using namespace
2017-08-18 23:41:43 714
原创 X^2 Mod P
X^2 Mod P 暴力直接过 #include #include #include #include using namespace std; #define ll long long ll num[100005]; int main() { ll p, a; while (cin >> p >> a) { ll
2017-08-18 23:40:02 555
原创 循环数组最大子段和
循环数组最大子段和 N个整数组成的循环序列a11,a22,a33,…,ann,求该序列如aii+ai+1i+1+…+ajj的连续的子段和的最大值(循环序列是指n个数围成一个圈,因此需要考虑an−1n−1,ann,a11,a22这样的序列)。当所给的整数均为负数时和为0。 例如:-2,11,-4,13,-5,-2,和最大的子段为:11,-4,13。和为20。
2017-08-18 23:23:39 574
原创 快速幂(基础)
快速幂ACM算法中比较基础的部分 快速幂:快速求一个数的n次方 例:求3的8次方,常规计算需要计算八次,快速幂三次(计算3*3记录所得数9,计算9*9记录所得数81,最后计算81*81即为所求) 如果是奇数次方就让a乘n,偶数次方n进行平方(n为底数,m为指数,a为所求) #include int main() { int n,m; scanf("%d%d",&n,&m);
2017-08-16 01:45:23 604
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人