10 2017 档案
摘要:链接:http://codeforces.com/contest/873/ A题: 贪心,把最大的k个数变成x即可。 B题: 从左向右枚举右端点,维护balance的最长长度。任意一个子串可以看做两个前缀相减,对于已知当前右端点中1比0多多少个,只需要减去前面的某个前缀,在这个前缀中1比0也多这么多
阅读全文
摘要:链接:http://codeforces.com/contest/884 A题: 求86400-ai的前缀和,找到第一个大于等于给定t的即可。 B题: 任意相邻两段之间必然有一个0,然后算一下至少的长度,然后看有多少多余的长度(可以为负数),多余的长度不等于0就是NO。 C题: 由题意可知,线路是若
阅读全文
摘要:题目链接:http://codeforces.com/gym/101350/problems 给定n个墙,每个墙有一个高度,要支持动态修改墙的高度和查询这个“容器”能盛多少水。 (队友)观察发现,能盛的水的体积就等于这个容器的“凸包”的体积减去墙的体积。所以要做的就是动态的维护凸包。 由于只有墙上升
阅读全文
摘要:题目链接:http://hihocoder.com/problemset/problem/1050 两种方法: 1. 两遍dfs,第一次随便找一个根,找到距离这个根最远的点,这个点必然是最长链的一端。第二次就用这个端点做一遍dfs,最远的点就是另一端。 2. 树形dp。记dp[i][0/1]表示以i
阅读全文
摘要:题目链接:http://codeforces.com/gym/100431/ 考虑到对于一个串β,能cover它的最短的α必然是它的border的某个前缀,或者是这个β本身。 所谓border,就是next[len(β)],直观含义是除了串本身以外,使得前缀等于后缀的最长的一段前缀。 发现如果bor
阅读全文

浙公网安备 33010602011771号