Codeforces Round #556 题解
在更了在更了
Div.2 A Stock Arbitraging
傻逼题
Div.2 B Tiling Challenge
傻逼题
Div.1 A Prefix Sum Primes
傻逼题,先放2,1然后放完2然后放完1
Div.1 B Three Religions
有三个字符串\(s_1,s_2,s_3\)和一个主串\(s\),每次操作改变一个\(s_i\)(插入或删除字符),每次操作完之后问\(s\)是否可以分成\(3\)个子序列正好是\(s_1,s_2,s_3\)。任意时候\(|s_i|\leq 250\)。
设\(nxt[x][i]\)表示主串上字符\(i\)在\(>x\)上第一个出现的位置。
设\(f[x][y][z]\)表示三个串分别匹配到\(x,y,z\)需要主串的最短长度。
那么这个可以\(O(1)\)转移,只要枚举拼起来的最后一个字符就行了。
插入最多改变\(251^2\)个\(f\)值,每次插入dp一遍多出来的\(f\)就行了。
https://codeforces.com/contest/1149/submission/53513066
Div.1 C Tree Generator™
咕咕咕
Div.1 D Abandoning Roads
咕咕咕
Div.1 E Election Promises
咕咕咕