- 博客(16)
- 收藏
- 关注
原创 cordeforces 337D Book of Evil
D. Book of Evil Paladin Manao caught the trail of the ancient Book of Evil in a swampy area. This area contains n settlements numbered from 1 to n. Moving through the swamp is very difficult
2015-08-13 11:35:02
509
原创 Problem A : Quoit Design
#include #include #include #include #include using namespace std; struct point{ double x,y; point(double xx = 0,double yy = 0){ x = xx; y = yy; } void input
2015-06-28 19:50:23
523
原创 zoj 3822 Domination 概率dp
#include #include #include using namespace std; int T; int l,c; double dp[2605][55][55]; bool b[2605][55][55]; double DP(int k,int x,int y){ if(x>=l&&y>=c)return 0; if(b[k][x][y])return dp[k][
2015-01-30 18:34:08
724
原创 hdu 4786 Fibonacci Tree
题目大意: 给你一张无向图,其中有的边为白色有的边为黑色,问你是否有一颗生成树并且它的白色边是斐波那契数列中的一个数 思路: 求出白边最少和最多的生成树之后看是否有一个斐波那契数在这之间就可以 代码 #include #include #include #include #include using namespace std; int T; struct edge{ int u
2015-01-26 19:02:43
503
原创 poj 3045 Cow Acrobats 贪心
题目大意: 牛叠罗汉,每个牛有体重和力量,牛的难受程度为此牛之上牛重量和减去牛的力量,问方案中最难受牛的难受程度最小为多少? 思路: 对于牛A,B属性为Wa,Ha,Wb,Hb。 此时的方案为两种即A在B上和A在B下对应的难受度为 Wa-Hb 和Wb-Ha 我们肯定会选择难受少的所以任意选择两头牛我们只需要比较Wa-Hb和Wb-Ha的值就行了也就是Wa+Ha小的应当放在上方。 代码如下#i
2015-01-24 19:45:55
669
原创 ZOJ 3334 Body Check 贪心算法
题目大意: 有m个医生和n个病人,每个病人检查身体的时间已知。医生必须同时工作或者只有一个人工作,求出检查完所有病人的最少时间。(同一时刻一个病人只能由一个医生检查,医生同时也只能检查一个病人,但是当病人没检查完医生可以换人) 思路: 检查完所有病人的时间和医生同时工作的时间有关,病人检查病的时间分为两个,一个是同时检查时间,剩下的就是一个医生检查的时间,答案就是SUM(病人检查时间)-(m
2015-01-24 16:41:05
1392
原创 poj 3134Power Calculus (IDAstar)
Power Calculus Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 1760 Accepted: 947 Description Starting with x and repeatedly multiplying by x, we can compu
2015-01-24 15:19:46
556
原创 模型整理------------区间dp
战狼模型-----------------------类似于dota的头狼,会给身边的狼buff。 计算伤害的时候是区间dp并且要枚举区间中最后一头杀死的狼,保证区间dp记录的是这个区间的最小伤害。伤害要计算区间之外相邻的那两头狼的增加攻击力。
2015-01-24 13:10:06
447
原创 hdu 4607 Park Visit 贪心
题目大意: 给你一颗树,树的边权值都为1,给你一个数K让你在树上走K个点的最小花费。 思路: 贪心 这条路一定是在树的直径上,如果树的直径不够长走分支的花费是一定的。 #include #include #include #include using namespace std; vector > v; int dp[100005]; int maxxi,maxx; void dfs(i
2015-01-23 18:58:44
409
原创 西安现场赛 Problem I. International Collegiate Routing Contest
题目大意: 给你一些ip地址,ip地址的表示方式点分十进制加子网掩码,让你求出与给出的网络号没有重复网段并且所有网络号合并可以组成整个网络同时保证你列举 出来的网络数量最少,将网络地址输出。 这道题目模型是一棵树,问题可以抽象成询问需要加多少个节点使得树的每一个父亲都有两个儿子。 树的表示方法深度表示的ip中的第几位,一个节点遇到0到左儿子遇到1到右儿子,这样每个ip地址都可以用树上的一
2015-01-23 13:39:30
788
原创 hdu 3240 卡特兰数与拓展欧几里得求逆元
#include #include #include using namespace std; void exgcd(int a,int b,int &x,int &y) { if(b==0) { x=1; y=0; } else { int t;
2014-08-25 19:37:03
566
原创 数论的模问题
当我们要求a%m的值的时候,假如一个数b能够使a*b%m==1 则b是a的逆元。 在我们求a%m值的时候,a存在逆元的条件是a和m互质 证明如下 对于一个方程ax+by = c,只有当c为gcd(a,b)的倍数的时候才有 解.对于a*b%m==1可以写成 ax+ym==1,说只有gcd(a,m)==1才有 解即a要是和m互质 之后求解逆元的过程如下 (1)a和m互质
2014-08-25 15:44:25
1421
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅