codeforces #324 div2
做了一场.以下是做题感受
第一题:
构造题,只要构造两位,后面添零即可.注意当n = 1 t = 10这组
的特殊情况.
第二题:
开始想错了,对于每个三角形是独立的.我们只要用总的情况-不合理
的情况即可.对于每个三角形不合法的情况只有7种,总共是27种,这样
总数就是27^n - 7^n
第三题:
构造题.对于n个字符的s1和s2.都必须有t个不相同
我们先统计出两个字符串公共的字符个数设为x
当x >= n - t时:
我们可以将前n-t个s1和s2相同位置的相同字符赋值给s3.剩下的
只要取不同于s1和s2的其他字母即可.
当x < n - t时:
对于s1和s2各有n-t-x个必须是和s3相同的.简单的不等式得出
n - t - x + n - t - x + x <= n.得出n - 2 * t - x <=0 这一条件.
当不满足这一条件时,输出-1即可.
否则,我们将x个位置处的s3赋值为与s1和s2相同的字符.将n-t-x
个字符与s1相同,n-t-x个字符与s2相同即可.
第四题:
数论题目,分类讨论.
当个数为1时 n 本身就是质数,直接输出
当个数为2时 n-2是质数,直接输出
当个数为3时,暴力求解.
开始以为是很难很难的题,以为这样的复杂度过不去,然后搜了搜题解...
原来还真是这样....
第五题:
这道题贪心,确实不会,对于重新映射,确实感觉挺巧妙,这样映射以后,对于
一个x它的最终的位置一定是确定的,只要将它后面的元素尽量移动到靠近
它的位置就好了.具体的我们从大到小开始.对于一个x,我们找到它的位置i
将i到n这一路上小于x的值的就将它与x交换,这样对于x花费是一定的.但是
对于被移动的元素,它移动到离他更近的位置.这样最终的结果一定最优.
整体感觉:
感觉这套题可以接受,自己太弱了,哎,继续加油吧~~~~
codeforces #324 div2
最新推荐文章于 2016-10-12 20:18:27 发布