http://codeforces.com/problemset/problem/757/B 题意:给出n个数,求一个最大的集合并且这个集合中的元素gcd的结果不等于1。 思路:一开始把素数表打出来,发现有9k+个数,不能暴力枚举。发现O(sqrt(n)*n)似乎可行,就枚举因子,然后出现过的因子就 ...
分类:
其他好文 时间:
2017-01-13 09:58:24
阅读次数:
444
A =w= B U.U C 题意:一道大模拟,不想看…… D 题意:给n个区间,从中选出k个区间,使得并集最大 分析:set或者线段树 因为此题需要输出方案,所以线段树就不太好了,用set比较好 先离散化,然后枚举左端点,把左端点对应的右端点全部加入set中,然后删除最小的几个留下k个最大的,那么就 ...
分类:
其他好文 时间:
2017-01-12 11:31:42
阅读次数:
264
题目大意 给定一个1到n的排列,然后随机选取一个区间,让这个区间内的数随机改变顺序,问这样的一次操作后,该排列的逆序数的期望是多少 首先,一个随机的长度为len的排列的逆序数是(len)*(len-1)/4,这是显然的,因为每种排列倒序一遍就会得到一个新序列,逆序数是len*(len-1)/2 - ...
分类:
其他好文 时间:
2016-12-27 20:26:40
阅读次数:
259
敲完三题挂机一小时..... 也没懂DE什么意思 rank600上了一波分... A. Hongcow Learns the Cyclic Shift 给一个字符串,每次可以把最后一个字符拿到开头 问能形成多少种.. 暴力模拟 set去重... B. Hongcow Solves A Puzzle ...
分类:
其他好文 时间:
2016-12-18 12:26:10
阅读次数:
237
A: 水题; B: 水题; C: n,n+1,n*(n+1) D: dfs,在这棵树上找到两个不相交的子树,使的这两棵子树上所有节点的权值和最大; dfs的过程中更新答案就好了; E: 二分+状压dp, 二分答案,然后在check的时候,dp[i][j]表示前i个的状态为j时的最长长度,对于每个i, ...
分类:
其他好文 时间:
2016-12-17 01:27:15
阅读次数:
172
题意:给定n和k,求第n个序列中第k个数是多少,序列是这样构造,原来只有1,然后再copy一遍放在到后面再在中间放上一个没有出现过的最小整数,就变成了 121,下次就成了1213121。 析:很明显是用递归来做,如果k在前半部分,那么就再递归,如果是在后半部分,那么就是先减一半再递归。 代码如下: ...
分类:
其他好文 时间:
2016-12-15 09:15:16
阅读次数:
215
http://codeforces.com/problemset/problem/740/D 对于每一对<u, v>。设dis[u]表示root到点u的距离,那么dis<u去v>就是dis[v] - dis[u], 就是在它的儿子中找出有多少个v使得dis[v] - dis[u] <= a[v]。然 ...
分类:
其他好文 时间:
2016-12-13 06:21:17
阅读次数:
265
1.C++ 11 Tricks http://codeforces.com/blog/entry/15643 2.C++ string http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 3.manacher + kmp + ...
分类:
其他好文 时间:
2016-12-04 07:52:33
阅读次数:
222
题目地址 简要题意: 给出两个点的坐标,以及一些一般直线方程Ax+B+C=0的A、B、C,这些直线作为街道,求从一点走到另一点需要跨越的街道数。(两点都不在街道上) 思路分析: 从一点到另一点必须要跨的街道等价于两点一点在这条直线一侧,另一条在另一侧。只需要将两点坐标带进去,一正一负即可。将这些直线 ...
分类:
其他好文 时间:
2016-12-04 00:12:55
阅读次数:
204
题意:给一棵n个结点的无根树染色,求使每个结点距离为k的范围内至少有一个被染色的结点的总染色方法数目 分析:首先我们定义: 对于结点v, 如果存在一个黑色结点u距离v不超过k,则结点v被“控制” 首先将无根树转换成以1为根的有根树,设dp[v][i]为对于以v为根的子树,距离v最近的黑色结点深度为i ...
分类:
其他好文 时间:
2016-12-03 23:50:06
阅读次数:
228