Codeforces
文章平均质量分 73
Lanifer
这个作者很懒,什么都没留下…
展开
-
CodeForce 204 Div2. C Jeff And Rounding
题目: 有2N个实数,不重复每次选取两个数,一个向下取整,另一个向上取整, 求变化前后和值之差的 最小值。 分析: 这种题没什么特定的算法,比赛时看RP, 不是容易想到方法。 可以这样考虑这个问题, 设实数对应的小数部分为X, 若向下取整 变化量为 -Xi, 若向上取整变化量为 +(1-Xj) ,总变化量为M*1+Sigma{ X } [ M是1的个数 ] (当然整数向上原创 2013-10-06 22:52:52 · 1138 阅读 · 0 评论 -
Codeforces Round #205 (Div. 2)
小弟不才,比赛时只做出3道。 A. Domino 容易得出结论最多只需交换1次。。。。 代码: #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long LL;原创 2013-10-11 07:27:27 · 970 阅读 · 0 评论 -
CodeForces 113B Petr#(KMP + 字符串hash)
题目链接: 分析:这题用hash来判重效率不错。可以先用KMP预处理出所有起点和终点,从每个起点出发,向后hash ,遇到终点就判断字符串是否出现过(若么出现过就ans+1),否则跳过。。 参考代码: #include #include #include #include #include using namespace std; const int maxn = 2050; c原创 2013-11-29 00:46:02 · 1499 阅读 · 0 评论 -
codeforces 9D How many trees?(DP,注意状态表示方法)
题目链接 分析:比较一下各种状态表示, ①dp[n][h] 若表示n个节点深度为h,则每次转移需要O(n*h^2),不够优; ②若dp[n][h]表示n个节点深度大于等于h,转移时的条件是至少有一个儿子的深度大于等于h-1,发现转移略复杂,是:[“左儿子深度=h-1"] + [“左儿子深度>=h-1” * "右儿子深度=h-1" * "右儿子深度>=h-1"] ,这三种情况的组合,原创 2013-12-03 00:40:11 · 1140 阅读 · 0 评论 -
codeforces 377B Preparing for the Contest
codeforces 377B Preparing for the Contest 题目是求在支付passes之和不超过s的前提下,让所花时间尽量少的一种方案。 分析:明显有两个限制条件:passes和所花时间 ,如果同时对两个条件进行处理很难搞,只能先固定一个条件,求另一个条件的最优解 。 这题如果先固定passes不超过s,求最少时间不是那么容易 ; 反过来 若二分天数 ,原创 2014-01-12 13:10:02 · 912 阅读 · 0 评论 -
codeforces Round 223 div1 A Sereja and Prefixes
codeforces Round 223 div1 A Sereja and Prefixes 这题只需注意到只会复制前10^5的数 ,就不难了 ,可是我写错了,硬是没找出来。。 只需存储前10^5个数即可。 我的代码: #include #include #include #include #include #include #include #inc原创 2014-01-13 02:20:45 · 1165 阅读 · 0 评论