arc114

arc一场比一场难噢噢噢噢
a:
容易想到对每个数进行质因数分解,然后只要每个数都和y有一个相同的质数即可,这个状压一下就可以了
b:
首先每个数的出度都是1,所以一个连通块里只有一个环,所以是2^t-1
c:
挺神仙的。
这种题首先要分析函数的性质,发现操作+1的情况是对于每个a_{i}lst==0||lst-i存在比j小的数列个数
正难则反,lst!=0&&lst到i >j的数列个数
因为你的lst保证了没有相同的元素,所以是>
那我们可以枚举lst,那么其中的lst-i就是
不重显然,不漏需要通过更换统计方式解决
设dp[i][j]为在i位置,a[i]=j时进行了一次操作
不能进行操作就是\(\sum^{i-1}_{k=1} m^{k-1+n-i}*(m-j)^{i-k-1}\)
\(g(i,j)=\sum^{i-1}_{k=1} m^{k-1+n-i}*(m-j)^{i-k-1}\)
换元,设x=i-k+1
\(g(i,j)=\sum^{i-1}_{k=1} m^{n-x}*(m-j)^{x}\)
\(g(i-1,j)=\sum^{i-2}_{k=1} m^{n-x+1}*(m-j)^{x-1}\)
\(g(i-1,j)=\sum^{i-1}_{k=2} m^{n-x}*(m-j)^{x-1}\)
\(g(i,j)=g(i-1,j)*(m-j)+m^{i-2}\)
可以方案因为有m^n种,这里不能有这么多,减一下
投降投降,式子推不出来了,但是反着推是对的啊啊
d:
先夸夸自己,题解给自己的思路只到转化到差分,噢噢噢噢哦哦哦
容易想到区间异或,然后将区间异或差分一下。这个差分比较奇怪,设\(s_{i}\)为i-1->i与i->i+1颜色是否相同,然后就变成了每次将\(s_{a_{i}}\)\(s_{x_{i}}\)异或上1。然后要求有k个点\(t_{i}\)异或和为0。我们先全部将\(s_{a_{i}}\)给异或上去,然后看有几个异或和要为1,然后就很简单了。假设有m个要异或和为1的点为白点,然后有n个点可以异或上去为黑点
首先一个白点只能对应一个黑点否则不优,那么就是一个dp匹配了,白白可以匹,白黑也可以匹。

posted @ 2024-08-17 11:17  wuhupai  阅读(3)  评论(0编辑  收藏  举报