开始想到dp去了…还是考虑问题太片面了取对立事件,计算不合法的子串数量取对立事件,计算不合法的子串数量取对立事件,计算不合法的子串数量不合法子串只可能是形如不合法子串只可能是形如不合法子串只可能是形如A+BBBB,B+AAAA,AAAA+B,BBBB+A这样的A+BBBB,B+AAAA,AAAA+B,BBBB+A这样的A+BBBB,B+AAAA,AAAA+B,BBBB+A这样的因为再加任何的A或者B,都会使得相邻的两个A间是回文,相邻的B间是回文因为再加任何的A或者B,都会使得相邻的两个A间是回文
原创
2021-08-26 15:48:06
53 阅读
原创
2021-08-26 15:48:04
42 阅读
先考虑如果s,t之一是aa,bb,cc的形式先考虑如果s,t之一是aa,bb,cc的形式先考虑如果s,t之一是aa,bb,cc的形式那么重复abcabcabcabc(只包含ab,bc,ca)那么重复abcabcabcabc(只包含ab,bc,ca)那么重复abcabcabcabc(只包含ab,bc,ca)或重复acbacbacbacb(只包含ac,cb,ba)一定有一种满足条件或重复acbacbacbacb(只包含ac,cb,ba)一定有一种满足条件或重复acbacbacbacb(只包含ac,cb,ba
原创
2021-08-26 15:48:01
56 阅读
原创
2021-08-26 15:47:59
27 阅读
原创
2021-08-26 15:47:56
64 阅读
看了题解又觉得自己好傻币相信你马上也会觉得自己很傻逼的原串只含有a,b,c,且相邻字母不相等原串只含有a,b,c,且相邻字母不相等原串只含有a,b,c,且相邻字母不相等那我从开头取连续的两个字母,末尾取两个连续字母那我从开头取连续的两个字母,末尾取两个连续字母那我从开头取连续的两个字母,末尾取两个连续字母4个字母,一定会有两个字母相等4个字母,一定会有两个字母相等4个字母,一定会有两个字母相等那我们取两个,丢掉两个那我们取两个,丢掉两个那我们取两个,丢掉两个取到最后如果不足4个字母,任取一个作为
原创
2021-08-26 15:47:51
68 阅读
当时没写出来,感觉自己还是太菜了,思维没碰上边仔细读题,题目说b不存在循环,总是以-1结束这就意味这开始,肯定有很多点不会受其他点的影响拓扑排序!!拓扑排序!!拓扑排序!!让i到bi连一条边,意味着如果选了i,那么abi会加上ai让i到b_i连一条边,意味着如果选了i,那么a_{b_i}会加上a_i让i到bi连一条边,意味着如果选了i,那么abi会加上ai拓扑排序,如果当前的ai大于0肯定让它传递下去,加入到答案序列去拓扑排序,如果当前的a_i大于0肯定让它传递下去,加入到答案序列去拓扑排
原创
2021-08-26 15:47:49
128 阅读
原创
2021-08-26 15:43:11
70 阅读
原创
2021-08-26 15:43:09
19 阅读
有点考验思维首先区间查询,单点修改,想到线段树可以维护区间gcd首先区间查询,单点修改,想到线段树可以维护区间gcd首先区间查询,单点修改,想到线段树可以维护区间gcd主要是查询区间gcd是否是x怎么办。主要是查询区间gcd是否是x怎么办。主要是查询区间gcd是否是x怎么办。我们只能查询区间的gcd,但是这里可以修改1个数我们只能查询区间的gcd,但是这里可以修改1个数我们只能查询区间的gcd,但是这里可以修改1个数若区间gcd是x的倍数,就别去管了\color{Red}若区间gcd是x的倍数,就别
原创
2021-08-26 15:43:07
32 阅读
原创
2021-08-26 15:43:05
94 阅读
非常巧妙的做法碰到这种题别想着硬来一个一个构造,多往异或性质上想一想对于n>=3的情况对于n>=3的情况对于n>=3的情况首先把[1,n−3]全都选上去,设异或和是y首先把[1,n-3]全都选上去,设异或和是y首先把[1,n−3]全都选上去,设异或和是y现在我们构造了n−3个数,还剩三个数设为a,b,c现在我们构造了n-3个数,还剩三个数设为a,b,c现在我们构造了n−3个数,还剩三个数设为a,b,c由于最后异或和要变成x由于最后异或和要变成x由于最后异或和要变成x也就是y⊕a
原创
2021-08-26 15:43:01
119 阅读
区间DP设dp[i][j]表示[i,j]能形成的最高回文阶层设dp[i][j]表示[i,j]能形成的最高回文阶层设dp[i][j]表示[i,j]能形成的最高回文阶层当且仅当[i,j]是回文的情况可以转移当且仅当[i,j]是回文的情况可以转移当且仅当[i,j]是回文的情况可以转移q表示[i,j]的左半部分结束位置,w表示[i,j]的右半部分开始位置q表示[i,j]的左半部分结束位置,w表示[i,j]的右半部分开始位置q表示[i,j]的左半部分结束位置,w表示[i,j]的右半部分开始位置那么dp[i][
原创
2021-08-26 15:42:59
191 阅读
原创
2021-08-26 15:42:53
54 阅读
考虑给定a,b,c,其中c为终点,如何求ac和bc的重叠路径呢?考虑给定a,b,c,其中c为终点,如何求ac和bc的重叠路径呢?考虑给定a,b,c,其中c为终点,如何求ac和bc的重叠路径呢?令dis(q,w)表示q和w的距离令dis(q,w)表示q和w的距离令dis(q,w)表示q和w的距离那么重叠路径是( dis(a,c)+dis(b,c)−dis(a,b) )/2那么重叠路径是(\ dis(a,c)+dis(b,c)-dis(a,b)\ )/2那么重叠路径是( dis
原创
2021-08-26 15:42:51
38 阅读
原创
2021-08-26 15:42:49
30 阅读
看到每个点只向外连出1条边说明图一定是一条链,链上串了一些简单环每个环只有逆时针和顺时针两种可能每个环只有逆时针和顺时针两种可能每个环只有逆时针和顺时针两种可能但是环上的每条边都可以翻转,也就是2size−2种可能但是环上的每条边都可以翻转,也就是2^{size}-2种可能但是环上的每条边都可以翻转,也就是2size−2种可能链上的边是无所谓,每条边都有2种可能,乘法原理搞一下链上的边是无所谓,每条边都有2种可能,乘法原理搞一下链上的边是无所谓,每条边都有2种可能,乘法原理搞一下至于找环dfs即
原创
2021-08-26 15:42:48
85 阅读
原创
2021-08-26 15:42:46
41 阅读
水题啊,好不容易遇到会写的1900分明显如果在答案中出现了字母x明显如果在答案中出现了字母x明显如果在答案中出现了字母x那么小于x的字母一定全选,因为这样使得x最靠后那么小于x的字母一定全选,因为这样使得x最靠后那么小于x的字母一定全选,因为这样使得x最靠后所以我们枚举这个x字母所以我们枚举这个x字母所以我们枚举这个x字母贪心的,小于x的全选,等于x的暂时不选,记录下来贪心的,小于x的全选,等于x的暂时不选,记录下来贪心的,小于x的全选,等于x的暂时不选,记录下来后续如果不满足m个的话,就贪心的去
原创
2021-08-26 15:42:44
88 阅读
原创
2021-08-26 15:42:42
29 阅读