<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_42987482的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_42987482</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_42987482]]></copyright><item><title><![CDATA[Atcoder ABC214 F - Substrings]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/129503026</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/129503026</guid><author>qq_42987482</author><pubDate>Fri, 17 Mar 2023 18:45:10 +0800</pubDate><description><![CDATA[当j==s[i]的时候：可以发现第i位字符不取时，方案数为DP[i-1][s[i]]，取第i位时，我们在不取第i-1位的所有不同字符串的最后多加上一个s[i]就是方案数，即DP[i-2][27]+1，为什么要+1呢，因为可以只取s[i]一个。满足这个特征的串的个数不就是DP[i-1][s[i]]吗？=s[i]的时候：可以发现第i位字符不可以取，因为取了以后结尾必然是s[i]而不是j，换言之当前位对DP[i][j]没有影响，所以说DP[i][j]=DP[i-1][j]]]></description><category></category></item><item><title><![CDATA[JSOI 2016 最佳团体]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/129270251</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/129270251</guid><author>qq_42987482</author><pubDate>Tue, 28 Feb 2023 21:36:00 +0800</pubDate><description><![CDATA[给出n个候选人，每个候选人i有三个属性，能力值Pi、招募费用Si、推荐人Ri]]></description><category></category></item><item><title><![CDATA[Codeforces 1795E  Explosions?]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/129230673</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/129230673</guid><author>qq_42987482</author><pubDate>Sun, 26 Feb 2023 20:36:40 +0800</pubDate><description><![CDATA[对这个连续子序列我们可以利用数学进行O（1）计算操作次数，根本不用回去遍历，他的操作次数就为len*（a[i]-a[i-1]），然后我们去除冗余的点，只记录a[i]和区间长度，之后我们要计算区间第一个数是否严格大于上一个数，也就是说是否要继续修改上一个区间，如果不严格大于的话，重复执行上述操作。那么我们回过头来看看，把元素分段看成一段一段递减的子序列，现在需要维护的是连续子序列的最大值和长度，所以说有些点我们不用存储，我们只要存储最大的点和长度即可，我们怎么去除连续子序列冗余的点呢？]]></description><category></category></item><item><title><![CDATA[Codeforces Round #842 (Div. 2) 个人题解]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/128582385</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/128582385</guid><author>qq_42987482</author><pubDate>Sun, 26 Feb 2023 15:46:52 +0800</pubDate><description><![CDATA[A. Greatest Convex题意：给t组数据，每组数据给定一个k，求出在[1,k)范围内，满足x!+(x-1)!%k==0的最大x题解：赛中可以通过观察法得知输出k-1即可，赛后可以尝试证明实际上对于x!+(x-1)!，取x为k-1，则有x!+(x-1)!=1*2*3*...*(k-2)*(k-1)+1*2*3*...*(k-2)不难发现提取公因式后，原式可以化简为：x!+(x-1)!=1*2*3*...*(k-2)*k此式一定可以被k整除，所以每组数据直接输出k-1即可。本题代码：过于简单所以略。]]></description><category></category></item><item><title><![CDATA[牛客寒假训练营6 阿宁睡不醒]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/129222611</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/129222611</guid><author>qq_42987482</author><pubDate>Sun, 26 Feb 2023 12:34:18 +0800</pubDate><description><![CDATA[数据范围很大所以我们不能用常规的二维DP求解，考虑到二维dp实际上有很多冗余，如果没有坏点我们可以用数学方法O（1）求解某一个DP值，所以说，我们可以只计算必要的值，用容斥处理这题，间接计算答案。要想达到目标，要向下走x-1步，向右走y-1步，那么我们可以把向下走的操作和向右走的操作进行一个排列组合，也就是一共进行（x-1+y-1)次操作，选择其中(x-1)步放置向下操作的方案数。题意：输入n，m代表一个n*n的网格中有m个坏点，随后输入m行的x，y坐标，表示所有坏点的位置。其中u为满足条件的坏点个数。]]></description><category></category></item><item><title><![CDATA[Codeforces 56/D. Changing a String（DP）]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/128987189</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/128987189</guid><author>qq_42987482</author><pubDate>Sun, 12 Feb 2023 23:00:00 +0800</pubDate><description><![CDATA[给定两个字符串a,b,保证字符串长度都在1000以内，你可以对A进行三种操作，删除a中任意位置一个字符，在a中任意位置插入一个任意字符，将a中某个位置的字符更换成任意字符，输出最小操作次数，并且输出每次具体操作。]]></description><category></category></item><item><title><![CDATA[Atcoder-abl_d-Flat Subsequence题解（线段树+dp）]]></title><link>https://blog.youkuaiyun.com/qq_42987482/article/details/128883745</link><guid>https://blog.youkuaiyun.com/qq_42987482/article/details/128883745</guid><author>qq_42987482</author><pubDate>Sat, 04 Feb 2023 17:51:33 +0800</pubDate><description><![CDATA[ACL Beginner Contest D - Flat Subsequence（线段树+dp）]]></description><category></category></item></channel></rss>