CodeForces 1238总结

传送门
A. Prime Subtraction
大意:给你两个整数x,y,你可以选择任意一个素数p,并从x中减去它的任意次数。是否有可能使x等于y。
水题,2,3均为素数,所以只要二者之差大于1即可。
B. Kill 'Em All
大意:给你两个数n,r,n代表怪物数量,然后给出n个数代表n个怪物在x轴上的位置,你可以用炸弹炸毁x轴的任意位置,此位置上的怪物将被炸死,位置小于此坐标的怪物将左移r,位置大于此坐标的将右移r,移动后若位置小于0则死亡,问至少需要几枚炸弹才能将怪物都杀死。
水题,贪心,从右往左一个个打死,这样能够使自然死亡的怪物多,节省炸弹。
C. Standard Free2play
大意:在h的高度,人只能跳一层楼或者两层楼,每在一个h高度时,可以按动按钮,使得本层踏板收回,下一层的踏板会改变状态(缩进去会伸进去,伸进去的会出来),问此人顺利到达底部需要几个能量(一个能量可以改变一个踏板的状态)
这个题很简单,而且在印象里我做过,但是家里网络就不争气的崩掉了,导致这个题我没提交上。考虑若a[i]-a[i+1]>=1,则看a[i+2],若a[i+1]-a[i+2]>1,则需要用能量,否则i直接跳过下一层即可。
D. AB-string
大意:给出仅由A、B组成的字符串s,问s有多少个好的子串(当子串的每一个字母都被包含在一个长度>2回文串中则称为好子串)。
大佬思路:用总的子串个数减去不好的串的个数,如果这个字符不被包含在回文串中,那么在这个子串中这个字符只能出现一次。如果出现2次或2次以上,则总能构成一个长度大于2的回文串。
共四种不相交的情况:
1.AB…B
2.BA…A
3.A…AB
4.B…BA
后两种即是前两种倒过来做,注意去重即可。
E. Keyboard Purchase
大意:给出一个长度为n的字符串,其中的每个字母的大小不会超过字母表中第m个字母,你可以改变前m个字母的位置,使给出的字符串的每两个相邻位置的字母的相对位置的和最小,输出这个最小值。
F. The Maximum Subtree
大意:给你一棵树,树上每个节点的值为真或假,输出n个数,分别为包含第i 个点在内的联通图中真结点数量减去假结点数量的最大值是多少。
由于网络太不给力,应该出三个题结果只出了两个,有点遗憾,希望明天能够正常发挥。昨天Div2真是太难了,竟然白白看了两个小时题而无从下手,我懵了,怎么这么难(当然也是因为水平十分有限),只能说慢慢来吧,只要不停努力,总有一天会得到理想的成绩!

猜你喜欢

转载自blog.csdn.net/weixin_46434074/article/details/107461069
今日推荐