题目大意:
给出一个序列和四种操作: (1) Add i j ,i和j为正整数,第i个元素增加j(j不超过30); (2) Sub i j ,i和j为正整数,第i个元素减少j(j不超过30); (3) Query i j ,i和j为正整数,i<=j,表示询问第i到第j个元素的和; (4) End 表示结束,这条命令在每组数据最后出现; 执行操作并对(3)进行答复。
给出一个序列和四种操作: (1) Add i j ,i和j为正整数,第i个元素增加j(j不超过30); (2) Sub i j ,i和j为正整数,第i个元素减少j(j不超过30); (3) Query i j ,i和j为正整数,i<=j,表示询问第i到第j个元素的和; (4) End 表示结束,这条命令在每组数据最后出现; 执行操作并对(3)进行答复。
Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀)。
字典树
1251、1298
线段树
1754、1698、3265
树状数组
1166、2492
单调栈
1506
搜索
2485、3696
贪心
3697、2491
二分查找
1969
模拟
1972、3269、2487、3262、4269
简单题
1194、1050、2708、1032、1012、1013、1334
动态规划
1955
最小生成树
2489
单源最短路
3268
计算几何
3264
枚举
3699
KMP
1686
AC自动机
2222、3965
给出一排灯,4个按钮,每个按钮可以使特定位置的灯改变状态。规定操作数c和目标状态,输出c次操作后所有符合目标状态的状态。
给出一个整数n,找出离n最近且比n大的循环数。
循环数的定义:首先循环数的各位数字互不相同。其次,如果你从最左边的数字开始向右数最左边这个数(如果数到了最右边就回到最左边),你会停止在另一个新的数字(如果停在一个相同的数字上,这个数就不是循环数),重复之前步骤,在经过每个数字一次后回到起点的就是循环数。如果经过每一个数字一次以后没有回到起点, 那么便不是循环数。