为什么只有前三题呢。。。第四题想了一个小时没思路(主要是半个小时的时候发现看错题了),然后看粉兔博客发现要用Cantor集一类的神奇玩意,手贱看了E题发现还是线性基。于是就run了。NOIP前再学吧
A:
题意简述
给你个由A和B组成的字符串,你可以把相邻两个字符改成AB,问你能不能把字符串改成一个回文串
题解思路
发现只要字符串长度>=3,那么无解的情况只有第一位为A,最后一位为B。
A.....A或B....A:中间可以全变为B
B.....B:可以变为BAAAA...AAAB
B:
题意简述
我们对case n游戏定义如下:有n个石子,熟悉的两个人一位只能取ka(k>=1)个石子,另一个只能取kb(k>=1)个石子,取ka的先手,取不了的输。
给出n, a, b,问进行case 1,case 2...case n n场游戏,先手获胜的有几场
题解思路
如果小于a,那么先手肯定输。如果 \(a>=b\) ,那么其他情况a肯定赢。因为此时只要取到a取不了,那么b就肯定也取不了
如果 \(a<=b\) ,只有 \(n%a<b\) 的情况才能赢 。不然到后手时会变成 \(a>=b\) 的情况,后手稳赢
记个数就行。
C:
题意简述
把 \(S = (1,2,3,4...,2n)\) 分成两组 \(A = (a_1,a_2,..a_n)\) 与 \(B = (b_1,b_2,..b_n)\) ,令 \(p = \sum_{i=1}^n{a_i * b_i}\),求 p 最大时A,B的分组有几种方式
题解思路
想要p最大,就要求2n和2n-1匹配,2n-2和2n-3匹配...2和1匹配
为什么?可以这样想:设2n不与2n-1匹配,与a匹配,2n-1与b匹配。为了方便,我们令A=2n,B=2n-1
则根据题目, \((A-b)(B-a)>0\)
拆开,移项\(AB+ab>Ab+Ba\)
所以A与B匹配更优
很妙的证明啊。。。其实这是一个叫做排序不等式的东西。
总结
如果对自己的代码正确性没有信心,建议养成对拍的习惯。
B题挂了三发,如果这是正式比赛就掉大分了
标签:case,...,匹配,题意,题解,前三题,arc145,2n From: https://www.cnblogs.com/closureshop/p/16808712.html