- 博客(12)
- 收藏
- 关注
原创 Codeforces Round 929 (Div. 3)
肯定不为0,那么这样贪心排序下来,如果可以得到结果不为0,满足题意,直接。,这样就可以不用写判断是否重复的条件(set可以直接去重),最后输出。要不删去一个元素(其取模结果为1),要不加2,所以可以用个。坐牢的开始qwq,自己想得太复杂了,其实直接用快速幂枚举。看看样例,可以大胆猜测一下,先从小到大排序,可以发现,要不删去一个元素,要不加1,无所谓,都是两次操作。两种操作:去除一个元素,或者某个元素+1。但是,需要特判是否有相同的情况,只需要考虑。即可,后面是否连续无影响,如果。直接累计各元素绝对值即可。
2024-02-28 22:48:42
868
原创 Codeforces Round 928(Div.4)
题目的意思:将给的数字分成若干组,同一组中的若干个数字之间,他们的二进制形式的每一位必须都是不同的,求最小组数。行中统计到的1的个数(前提是这两行中1的个数不为0)不同时,就是三角形,否则是正方形。其实是一个见过很多次的操作了qwq,先离线处理计算(没错,就是你想的暴力计算。)出所有在数据范围内的答案,然后用一个数组将其存下即可。那么我们可以根据这个性质,来求解这道题了,具体还得看代码。我的思路是:当统计每一行1的个数,当第。一开始的时候WA了一次,就是没考虑到第。刚刚写博客的时候想到可以改进一下,如果。
2024-02-27 21:24:34
907
原创 Luogu【算法2-1】前缀和、差分与离散化
其实是二维前缀和的板子,这里给出几份代码,看看不同的思路(大多都是细节上处理的方法不同)。或者可以理解成是矩阵压缩,可以看看题解的第一篇,本质其实是一样的。,可以看看(大佬如果觉得侵权,联系我删除即可qwq)。差分的板子题,但是我经常忘记怎么操作了,贴上证明。为右下角的矩形的面积有点疑惑。实际上是在枚举时优化了一下,降低时间复杂度。简单的前缀和板子,不多说。这下应该能看懂了吧qwq。
2024-02-26 12:15:31
1297
1
原创 Codeforces Edu 162
至于怎么移,可以想象把从第一个1串右端的所有1串保持成串的形式,轮流滚近第一个1串,恰好接上为止,可以证明,滚的次数恰好就是。有一个比较容易实现的想法:就是在原有的基础上,部分元素加1,显然,有一些元素需要减少,但是又不能减太多(不然就小于0了)。贪心,很显然,肯定是需要先打举例我们最近的怪物,再打次近的怪物,依此类推,只要在其中,有一个怪物打不死,那么我们就输了。可以用前缀和,预处理出在各个区间内1的个数,以及各个区间内非一元素的最大贡献。越小,区间和越大,反之,区间和越小,所以想到可以用二分。
2024-02-25 15:46:37
914
原创 [KMP]CF1029A
题目描述:你有一个字符串t,它由n个字母组成。定义一个字符串s的子串为s[l…r],表示从位置l到r构成的一个新的串。你的目标是构造一个字符串s,使得它的可能长度最小,要求s中存在k个位置i,可以找到k个以i为出发点的子串t。输入: 第一行输入两个整数n和k,表示t的长度和需要k个子串第二行输入字符串t输出:输出满足条件的长度最小的s。题目保证答案唯一。
2024-02-24 21:16:50
1003
原创 [构造]CF54D
求一个字符串s,满足该串长度为n,只出现字母表中前k个字母,并且在指定位置必须出现指定字符串p第一行 n,k。(n为所需字符串的长度 n
2024-02-24 20:37:21
923
原创 [KMP]CF126B
Asterix,Obelix 和他们的临时伙伴 Suffix、Prefix 已经最终找到了和谐寺。然而和谐寺大门紧闭,就连 Obelix的运气也没好到能打开它。不久他们发现了一个字符串S1⩽∣S∣⩽1000000,刻在和谐寺大门下面的岩石上。Asterix猜想那一定是打开寺庙大门的密码,于是就大声将字符串朗读了出来,然而并没有什么事发生。于是 Asterix 又猜想密码一定是字符串S的子串T。Prefix 认为T是S的前缀,Suffix 认为T是S。
2024-02-24 19:21:04
992
原创 [KMP]UVA1328
对于给定字符串S的每个前缀,我们想知道它是否为周期串(周期串定义为由若干最小循环节拼接而成的字符串),若是,输出前缀长度和循环节数量。多组数据,每组数据第一行一个整数n,表示字符串s的长度,若n0则结束输入。若n0,则第二行一个字符串S,如题意。对于第i组输出,第一行一个字符串。之后若干行一行两个整数,表示如果字符串S的一个前缀是周期串,它的长度和循环节数量(注意这里的循环节是指循环节)。之后再空一行。n≤106,字符串S均由小写字母构成。
2024-02-24 15:53:05
717
原创 [KMP]UVA10298
求一个字符串由多少个重复的子串连接而成。例如ababab由三个ab连接而成,abcd由abcd由一个abcd连接而成。
2024-02-23 18:07:00
840
1
原创 [KMP]Luogu P3375
给出两个字符串s1和s2,若s1的区间lr子串与s2完全相同,则称s2在s1中出现了,其出现位置为l。现在请你求出s2在s1中所有出现的位置。定义一个字符串s的 border 为s的一个s的子串t,满足t既是s的前缀,又是s的后缀。对于s2,你还需要求出对于其每个前缀s′的最长 bordert′的长度。
2024-02-22 23:43:16
793
1
原创 [KMP]Luogu P3435
对于一个仅含小写字母的字符串ap为a的前缀且pa,那么我们称p为a的 proper前缀。规定字符串Q表示a的周期,当且仅当Q是a的 proper 前缀且a是QQ的前缀。若这样的字符串不存在,则a的周期为空串。例如ab是abab的一个周期,因为ab是abab的 proper 前缀,且abab是ab+ab的前缀。求给定字符串所有前缀的最大周期长度之和。
2024-02-22 18:28:53
652
1
原创 [KMP]Luogu P4391
给你一个字符串s1,它是由某个字符串s2不断自我连接形成的(保证至少重复2次)。但是字符串s2是不确定的,现在只想知道它的最短长度是多少。
2024-02-22 16:43:45
757
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人