NOIP2024 T1 T2 题解
\(1\)~\(4\) 写你喜欢的暴力,细节可能有点令人头疼,写得好的话复杂度\(O(T(4^n+2^nn))\),期望得分\(20pts\)。
\(5\)~\(8\) 直接比较即可,期望得分\(40pts\)。
\(9\)~\(12\) 按\(t\)分成若干个子区间,对于\(s1\),把每个区间里\(0\)和\(1\)的数量统计一下,分别为\(a_{0/1}\)。对\(s2\)同理,分别为\(b_{0/1}\)。那这一段的贡献为\(min(a_0,b_0)+min(a_1,b_1)\)。注意别忘了加不动点的贡献。复杂度\(O(n)\),期望得分\(60pts\),也算是本题的大众分?
\(13\)~\(16\) 总共\(2\)个不动点,像上面一样用个数计算贡献即可,可能需要处理一点细节。复杂度\(O(n)\),期望得分\(80pts\)。
然后,你会发现,显然是能匹配尽量匹配的。感性理解一下,匹配了这一对会导致后面最多少匹配一对,不匹配这一对会导致后面最多多匹配一对。
以\(s1_i=0\),\(s2_i=1\)为例,我们想要找的其实是\(i\)后面最小的\(j\),使得\(s1_j=1\)且中间不经过不动点,或\(i\)后面最小的\(k\),使得\(s2_k=0\)且中间不经过不动点。如果\(j\)或\(k\)存在,那就换过来,加上\(i\)的贡献,否则忽略\(i\)即可。所以:
\(17\)~\(18\) 暴力即可,复杂度\(O(n^2)\),期望得分\(90pts\)。
\(19\)~\(20\) 发现\(j\)和\(k\)都是单增的,于是开\(4\)个指针维护\(j\)和\(k\)即可(因为还可能\(s1_i=1\),\(s2_i=0\)),复杂度\(O(n)\),期望得分\(100pts\),\(captainOI\)也拿到了。
其实这题所有的题解都不好,都做得过于麻烦了。很多人认为\(T1\)难写,\(Luogu\)还标上了蓝色的难度,但其根本原因是,做题者根本就没有想明白。(这也导致\(captainOI\)考完看见\(Luogu\)评级后,心惊胆战,好几天没睡好觉)
重要的事情说\(3\)遍,\(\red {v\ge 2,v\ge 2,v\ge 2!}\)
由于\(v\ge 2\),所以你会发现,导致不合法的根本原因,其实是相邻的\(2\)个\(c\),一元限制为\(x_{c_i}=d_i\),\(x_{c_{i+1}}=d_{i+1}\),但二元限制会链接成:\(x_{c_i}=a--->x_{c_{i+1}}=b\),且\(b\ne d_{i+1}\)。\(c_1\)前面的部分和\(c_m\)后面的部分,显然不会导致不合法,链接不起来也一样,因为\(v\ge 2\),我们可以通过巧妙走位的办法避开二元限制。所以其实\(d_i\)没多大用。所以:
\(1\)~\(5\) 写你喜欢的暴力,可能会有点卡常?复杂度\(O(T2^{2n-2}(n+m))\),期望得分\(25pts\)。
\(6\)~\(9\) 怎样都是合法的,答案为\(v^{2n-2}\),复杂度\(O(Tlogn)\),期望得分\(45pts\)。
\(10\)~\(12\) 考虑每一对\((i,i+1)\)的贡献,然后用乘法原理乘起来。可以的不好算,考虑正难则反。不行的有\(v-1\)种,即\(a_i=d_i\),\(b_i!=d_{i+1}\)。所以答案为\((v(v-1)+1)^{n-1}\)。复杂度\(O(Tlogn)\),期望得分\(60pts\)。
\(13\)~\(20\) 考虑进一步拓展。\(c_1\)以前和\(c_m\)以后不重要,总贡献为\(v^{2(n-1+c_1-c_m)}\)。对于\((c_i,c_{i+1})\),考虑正难则反。不行的情况中,\(a_{c_i}=d_i\),\(b_j=a_{j+1}(c_i\le j\le c_{i+1}-2)\),\(b_{c_{i+1}-1}\ne d_{i+1}\)。所以不行的方案数为\(v^{c_{i+1}-c_i-1}(v-1)\)。所以答案为\(v^{2(n-1+c_1-c_m)}\prod_{i=1}^{m-1}(v^{2(c_{i+1}-c_i)}-v^{c_{i+1}-c_i-1}(v-1))\)。算上刚开始的排序,复杂度\(O(Tm(logn+logm))\),期望得分\(100pts\),\(captainOI\)也拿到了。
但是,如果你不注意一个细节的话,\(100pts->55pts\)。由于本题为保证\(c_i\)互不相同,故存在\(c_i\)相同,且\(d_i\)不同的情况。这种情况要特判为\(0\),排序后也要对\(c_i\)进行去重。这也证明,本题的样例真是够良心的了。
最后来一句,相信\(NOIP\),能力到了,就一定能考出来!
浙公网安备 33010602011771号