分类: 未分类

544 篇文章

CF985E Pencils and Boxes
Lisa 尺取法搞一波 然后前缀和优化一波 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using namespace std; int a[500005…
P4059 [Code+#1]找爸爸
Lisa 显然两个在一起的空格是没有意义的。 所以空格的相对的一定是字符 这样在匹配的时候考虑对于两个字符,加不加空格和加在哪里 因为连续的空格有额外贡献 所以要记录有没有和在哪里 #include<iostream> #include<cstdio> #include<cstring> #include<…
CF607A Chain Reaction
Lisa 显然的dp,只需要再二分查找一下 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using namespace std; int n; struc…
UVA1401 Remember the Word
LIsa 就DP本身来说非常好想,但是怎样知道这个东西有没有在字典里出现过呢 hash似乎还是有点慢 这时候就应该用字典树了 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algori…
P4824 [USACO15FEB]Censoring S
Lisa 很水的kmp小题 思考一下就可以知道,肯定要跑kmp,但是当我们删掉一个串后剩下怎么办 答:从上一次的位置接着匹配 记录一下这个东西就行了 #include<iostream> #include<cstring> #include<iostream> using namespace std; char …
CF148E Porcelain
LIsa 就是一个背包 #include<cstdio> #include<iostream> #include<cstring> #include<iomanip> #include<cmath> #include<algorithm> #define int long lo…
CF1200E Compress Words
LIsa 只要理解kmp,就会知道应该找前缀和后缀了 把当前输入的串和已知的答案串拼起来,然后中间加上一个小小的不存在字符,跑kmp #include<cstdio> #include<iostream> #include<cstring> #include<iomanip> #include<…
UVA10298 Power Strings
Jisoo 枚举一下next也没事 也可以运用结论 这个结论画个图证明就可以了 #include<cstdio> #include<iostream> #include<cstring> #include<iomanip> #include<cmath> #include<algor…
CF126B Password
Jisoo kmp中的next数组表示按照当前位置结尾的相同的最大真前缀和后前缀长度 那么如果这玩意真的存在,那么next[n] 一定不为零 然后枚举一下2-n-1,找找有没有相等的next就可以了 #include<cstdio> #include<iostream> #include<cstring> #in…
CF533B Work Group
Jisoo 不显然的树上dp 定义$f_{i,j}$为第i位和为子树所选奇数个/偶数个点的方案数 然后显然会发现奇数加奇数等于偶数等规律 然后就可以转移了 #include<cstdio> #include<iostream> #include<cstring> #include<iomanip> #…