摘要:
要点 处于什么位置的题常用一个套路就是搞完$[l,r]$以后处于0(l)或1(r)的状态,即$dp[i][j][0/1]$。 对于此题dp意义为已经搞完$[l,r]$的时最小的已耗电能,转移:以在$i$处为例,只会是$i+1$处直走过来或者$j$处掉头过来两种。写就很好写了。 C++ include 阅读全文
摘要:
常规线性dp,需要时就加一维。$dp[i][j][t][s]$表示在点$(i,j)$时瓶子里剩$t$且为$s$走(0代表小a,1代表uim)时的方案数。 de了半天发现是初次尝试的快速取模少写个等号……然鹅改了以后为什么比正常写跑得慢…… C++ include const int mod = 1e 阅读全文
摘要:
要点 因为当前最大字符只有一个且两边是回文的,所以如果答案包含最大字符则一定是重合部分。 若不包含,则用此字符将两个区间分别断为两部分,则共有四种组合,答案一定为其中之一。 C++ include include using namespace std; int l1, l2, r1, r2; in 阅读全文