随笔分类 - cf
摘要:604B - More Cowbell 思路:贪心。如果有些盒子装一个,那就只装最大的那几个。然后剩下的最大的和最小的合在一起装一个盒子,第二大和第二小的合在一起。。。。。。以此类推。 记录最大的盒子容量。 代码:
阅读全文
摘要:285C - Building Permutation 思路:贪心。因为每个数都不同且不超过n,而且长度也为n,所有排列只能为1 2 3 ......n。所以排好序后与对应元素的差值的绝对值加起来就是答案。 代码:
阅读全文
摘要:388C - Fox and Card Game 思路:贪心博弈。 如果是偶数个一人一半;如果是奇数个,中间那个数单独取,其他一人一半。单独取的数排一下序再取。 代码:
阅读全文
摘要:388A - Fox and Box Accumulation 思路: 从小到大贪心模拟。 代码:
阅读全文
摘要:614E - Necklace 思路:如果奇数超过1个,那么答案是0;否则,所有数的gcd就是答案。 构造方案:每个数都除以gcd,如果奇数个仍旧不超过1个,找奇数个那个在中间(如果没有奇数默认a),其他的平均分到两边。 如果奇数个数超过1个,为了保证中间点之间的每个字母个数是偶数个,那么就拿上种情
阅读全文
摘要:556D - Case of Fugitive 思路:将桥长度放进二叉搜索树中(multiset),相邻两岛距离按上限排序,然后二分查找桥长度匹配并删除。 代码:
阅读全文
摘要:197D - Infinite Maze 思路:bfs,如果一个点被搜到第二次,那么就是符合要求的。 用vis[i][j].x,vis[i][j].y表示i,j(i,j是取模过后的值)这个点第一次被搜到的位置,用vis[(next.x%n+n)%n][(next.y%m+m)%m]标记,因为位置可以
阅读全文
摘要:260D - Black and White Tree 思路:把两种颜色先按值sort一下,最小值肯定是叶子,然后把这个叶子和另外一中颜色的一个最小值的节点连接起来,再把这个节点变成叶子,把值减掉就可以了。 如下图: 代码1: 代码2(写残版): 我居然用了优先队列,患上STL综合症的我脑残了。
阅读全文
摘要:260B - Ancient Prophesy 思路:字符串处理,把符合条件的答案放进map里,用string类中的substr()函数会简单一些,map中的值可以边加边记录答案,可以省略迭代器访问部分。 代码:
阅读全文
摘要:260C - Balls and Boxes 思路:模拟。在x前面找到最小值,如果没有,从0跳到n,继续找到最小值,边找最小值路过的点边减1。然后所有值都减去最小值,最小值那个点加上减去的值。 找到x前面离x最近的最小值的原因:如果如果在x到最小值之间还有最小值,那么这个最小值最后会变成-1。 简单
阅读全文
摘要:559B - Equivalent Strings 思路:字符串处理,分治 不要用substr(),会超时 AC代码: TLE代码:
阅读全文
摘要:580A - Kefa and First Steps 思路:dp dp[i]表示包括前i个元素中a[i]在内的最大增序列。 代码:
阅读全文
摘要:447D - DZY Loves Modification 思路:将行和列分开考虑。用优先队列,计算出行操作i次的幸福值r[i],再计算出列操作i次的幸福值c[i]。然后将行取i次操作和列取k-i次操作,那么多加的幸福值就是i*(k-i)*p,因为无论先操作行还是列,每操作一次一个格子只减一次p。这
阅读全文
摘要:447C - DZY Loves Sequences 思路:dp 代码:
阅读全文
摘要:D - High Load 因为要出口节点距离最小,所以除了根节点(根节点连接k个儿子)其他节点的儿子只能有一个,其他情况下的距离都比这个长,因为如果不是这样,那么根节点连接的子树数量就小与k,那么每个子树的长度就更长了(显然,画图可证)。 n-1个节点平均分配到k条子树上,如果画图的话,是这样的
阅读全文
摘要:C - String Reconstruction 方法一:把确定的点的父亲节点设为下一个点,这样访问过的点的根节点都是没访问过的点。 代码: 方法二:把所有点放进set容器里,拜访过的点就删掉。 代码:
阅读全文
摘要:96C - Hockey 字符串处理 代码:
阅读全文
摘要:349B - Color the Fence 贪心 代码:
阅读全文
摘要:C. Mahmoud and a Message time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output C. Mahmoud and
阅读全文
摘要:D. Mike and distribution time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output D. Mike and dis
阅读全文