10.29模拟赛
作者:互联网
致命错误=w=写错文件名www
T1
考点L:思维
看出来了是个dp。
状态表示:设\(dp[i][j]\)为前\(i\)扇门暴力破坏了\(j\)扇门。
状态转移:
\(dp[i][j]=dp[i-1][j]\times(i-1)+dp[i-1][j-1]\)
考虑拼上当前第\(i\)扇门,第\(i\)扇门放着第\(i\)扇门的钥匙。前\(i-1\)扇门已经放好了前\(i-1\)扇门的钥匙。
如果暴力破坏当前的门,那么前\(i-1\)扇门破坏了\(j-1\)扇。
如果不暴力破坏当前的门,那么需要和前面的\(i-1\)扇门中的一扇交换钥匙,共有\(i-1\)种选择。
T2
考点:思维。
以为是个求回文串之类的,觉得不会manacher,写了个暴力就走人,实际上根本就不用求回文串。
一个长度为\(n\)的串,排除掉长度为\(1\)的子串还有\(\frac{n(n-1)}{2}\)个子串,其中每一个子串都对应着唯一一个左右端点的组合。考虑这些子串中哪些子串反转的结果是相同的,然后去重计算答案。
如果一个子串最左侧和最右侧的字符相同,则这个子串翻转的结果和去掉左右两侧字符的子串翻转的结果是一样的。也就是说每对相同的字符作为左右端点时都贡献了一次重复的答案。
如果一种字符出现了\(m\)次,贡献重复答案的次数就是\(\frac{m(m-1)}{2}\)。
减去重复贡献的,最后加上\(1\)(翻转长度为\(1\)的子串)。
T3
考点:建图,欧拉路。
考试思路:把每块蛋糕当成点,每块蛋糕的权值当成边权,建了一个图跑最长路。实际上这个思路是错的啊…考虑可能出现一个蛋糕的面同时匹配到与其奶油类型相同的两块蛋糕的面。不知道数据是有多水还能拿到25pts呀……
正解思路:
将每种奶油看成一个节点,每块蛋糕看成一条边。
考虑化简一下这个图,首先如果最终方案里存在某种奶油,则该奶油上的自环肯定都会选取,两个奶油节点之间的每两条重边可以等效成一个奶油节点上的自环,则原图可以简化成一个没有重边和自环的图。
考虑欧拉路,若化简后的图中存在欧拉路,则所有的蛋糕都可以选择。否则最多只有一条边无法选择,再枚举不可选的边,取可行方案中最小的边。
T4
考点:二分。
重点在于判定。
标签:子串,10.29,考点,模拟,蛋糕,奶油,dp,扇门 来源: https://www.cnblogs.com/Rapunzel/p/15481959.html