- 博客(11)
- 资源 (2)
- 收藏
- 关注
原创 cf div2 #333 D. Lipshitz Sequence (单调栈)
题目:http://codeforces.com/contest/602/problem/D题意:给定n(n)个整数的数组h[i],现在定义一个函数For an array , we define it's Lipschitz constant as follows:if n , if n ≥ 2, over all 1 ≤ i j ≤ n然后有
2015-11-27 21:44:02 586
原创 codeforces #331 D. Wilbur and Trees (dp)
题目:http://codeforces.com/contest/596/problem/D题意:有n棵高为h的树在一排,已知每棵树的位置pos。现在你从最左边或者从最右边等概率挑选一棵树砍断,树向左倒的概率为P向右倒的概率为(1-P),树倒下时如果撞到了其它的树会发生连锁反应,假如还有树没有倒完,你还会等概率挑选一棵树砍断。现在问你所有树倒下时覆盖地面的长度的期望。分析:开始定义dp
2015-11-18 19:33:15 530
原创 hdu 5564 Clarke and digits (dp+矩阵加速)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=5564题意:问题描述克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在研究数字。 他想知道在所有长度在[l, r][l,r]之间的能被77整除且相邻数位之和不为kk的正整数有多少个。 输入描述第一行一个整数T(1 \le T \le 5)T(1≤T≤5),表
2015-11-16 13:20:12 1055
原创 codeforces #302 Remembering Strings (dp)
题目:http://codeforces.com/contest/544/problem/E题意:给定n个长度为m的字符串。为了让每个字符串变为独特的(该字符串的某一个位置存在一个字符ch,其他串的这个位置都不存在这个字符ch),你可以改变某些字符串的某些字符。现在告诉你改变每个字符的代价,求让所有的串成为独特的串的最小代价。分析:定义dp[bitmask],bitmask的二进制中的1表
2015-11-12 16:41:49 515
原创 codeforces #302 Destroying Roads (最短路径+暴力)
题目:http://codeforces.com/contest/544/problem/D题意:给定一个连通图,现在让你找出两条路径d1: x1-->y1 和 d2: x2-->y2 并且d1分析:先预处理出x1到所有点的最短路径,和x2到所有点的最短路径。因为d1和d2有可能重叠,所以,暴力枚举所有可能重叠的路径即可。PS:由于边权全部为1,所以可以用O(n)的时间复杂度广搜出x1
2015-11-12 16:08:40 498
原创 codeforces #320 Writing Code (完全背包)
题目:http://codeforces.com/contest/544/problem/C题意:有n个程序员,给出每个程序员写一行代码会出现的bug数,现在要写m行的代码,问怎么安排使得总的bug数小于m。分析:定义dp[i][j][k]为处理可前i个程序员,写了j行代码,最多出现k个错误的方案数。直接用完全背包推即可。代码:#include using namespace s
2015-11-12 15:55:46 565
原创 codeforces #329 D. Happy Tree Party (LCA+并查集 || 树链剖分)
题目:http://codeforces.com/contest/593/problem/D题意:给定一棵n个节点的树。有两种操作:①给定 u v p, 求p除u--->v这条链上所有的边权的值(每次上下取整)②修改某一条边的边权。分析:解法一:由于p具体做法:u-->lca (deep(u)>deep(lca)), v-->lca (deep(v)>deep(lca))代码:
2015-11-08 11:15:23 484
原创 树链剖分模版
题目:spoj375题意:给定一棵n节点的树,有两种操作,①修改某一条边的权值②查询某一条链u-->v的权值最大的边。分析:树链剖分入门学习对树链剖分的初步认识:①把树上的边分为两类:重边和轻边。②任意两个节点u和v连接的这条链上,重链和轻边的数目都不超过logn(n为总的边数)③任意两个节点u和v连接的这条链上,一条重链上重边在线段树里面的编号是连续的,因此可以在线段树里
2015-11-08 10:54:44 449
原创 N个数选任意个使得异或和最大(高斯消元)
#include using namespace std;typedef long long LL;typedef unsigned long long ULL;const LL INF = 1E9+9;const int maxn = 1e5+6;/*求在XOR数组里面选任意多的元素的异或和最大*/LL XOR[maxn];LL base[65];LL guass(int
2015-11-07 12:22:58 3886 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人