- 博客(4)
- 收藏
- 关注
原创 2021-07-16
###枚举 ##差分 前缀和 差分:对一个区间加上一个值,只需考虑两端位置即可。 假设有一数组 a[0] a[1] a[2] 假设有一数组 a[1] a[2] a[3] … a[n] b[i] = a[i] - a[i-1]; b[0] = a[0]; 那么a[i] = b[0] + b[1] + b[2] +…+b[n] 则 b[i] 就是a数组的差分数组 换句话说a数组就是b数组的前缀和 当对 数组a某一区间加上一个数,只需考虑区间两端就行。 b[start] ++; b[end-1] --; b数组
2021-07-16 20:08:44
60
原创 各种字符、字符串的输入问题
#对字符串的输入问题 像例一这种题的输入 不能简单的用scanf输入 因为输入中途会有回车 有两种解决方案 ①定义字符c char c; while(c=getchar()!=EOF)//c=getchar();对单个字符的输入。 { } ②定义 string 类型的字符串 s ```cpp string s; while(getline(cin,s))//遇到回车结束本次输入 { } 例一 POJ - 1488 TEX is a typesetting language develop
2021-06-02 14:52:15
91
原创 专题训练一:字符串
#acm 专题训练一:字符串 ##求最小循环节(next 数组) kmp算法的一种 学习路径b站 添加链接描述 next数组 void getnex(char *s,int nex[]) { int len = strlen(s); int i = 0,j = -1; nex[0] = -1; while(i < len) { if(j == -1 || s[i] == s[j]) { i++; j++; nex[i] = j; } else j =
2021-05-31 19:47:54
37
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人