自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 UVa 11795 Mega Man's Mission(动态规划-状态压缩DP)

题目大意:T组测试数据, 每组测试数据1个n,表示要杀n个人,接下来1行表示一开始,拥有杀哪些人的武器,例如“110”表示有杀第1,2个人的武器,接下来n行,分别表示杀完第i(1<=i<=n)个人可以得到的武器。解题思路:状态压缩DP,转移方程就是 dp[x] = sum(dp[y]),其中y满足两个条件,(1)y是x的子状态,也就是y再杀一个人k就到x。(2)y拥有杀k的武器。

2014-08-03 18:20:25 854

原创 HDU 2674 N!Again (数论-其他)

题目大意:求N! % 2009的最大值,n最大10^9解题思路:水体。仔细想想,2009不是质数,7 × 7 × 41 = 2009 ,所以41以后就不用算了,全是0!

2014-08-03 18:17:25 505

原创 HDU 3215 The first place of 2^n(数论-其他)

题目大意:题目大意就是计算2^0到2^n这n个数首位为1的次数,2的次数,...9的次数。解题思路:log10,纯数学。注意精度误差。X = pow(10, i * log10(2.0) - int(i * log10(2.0)));自己想为什么。

2014-08-03 18:13:17 589

原创 HDU 2489 Minimal Ratio Tree(图论-最小生成树)

题目大意:给你一张图n个点,每个点有权值,问你从中选出m个点,使得最小,输出方案。解题思路:用二进制取与不取来枚举选出m个点的方案,分母就确定了,分子越小越好,所以通过最小生成树算出。

2014-08-03 18:07:19 624

原创 HDU 4864 Task(基本算法-贪心)

题目大意:有n台机器,m个任务,每台机器有xi,yi,每个任务也有xj,yj,任务j可以被机器i处理的条件是,xj<=xi 且 yj<yi,处理完产生 500*xj+2*yj 的价值,问你最多完成多少任务,在此基础上产生的最大价值是多少?解题思路:注意y的范围是 y<100,也就是x相差1,不管y相差多少,都不影响价值的关系。贪心。机器和任务都按x排序,x相同按y排序。取排在最前的任务j,在所有xi大于yj的机器中,选取yi最小的与任务j匹配。(y较大的机器可以留给其他任务)

2014-08-03 17:57:44 654

原创 UVa 10168 Summation of Four Primes(数论-哥德巴赫猜想)

题目大意:给定一个数n,问能用4个质因素相加表示,输出任意一种方案。解题思路:这题比较有趣(1)如果 n < 8,明显无解,最小的质数为2。(2)如果 n >= 8,我们认为肯定有答案。根据哥德巴赫猜想,一个偶数可以用两个质数相加表示。1. 若n为奇数,可以 用 2+3+偶数 表示,偶数可以拆为两个质数,枚举其中一个,判断剩下的是不是质数即可。2. 若n为偶数,可以 用 2+2+偶数 表示,方法同上。

2014-08-03 17:49:23 1011

原创 UVa 10290 {Sum+=i++} to Reach N (数论-整数和素数,组合数学-排列组合)

题目大意:问一个数n,用连续的几个数相加表示的方案数。解题思路:假设首项为a,有m项,则 (a+a+m-1)*m=2*n。当m为奇数,a+a+m-1必为偶数;当m为偶数,a+a+m-1必为奇数,所以为2n = 奇数×偶数。需要将2n分解质因数,因奇数×奇数=奇数,所以求出2n的奇质因数的排列组合数,即所求方法数。

2014-08-03 17:42:08 980

原创 HDU 1695 GCD (数论-整数和素数,欧拉函数,组合数学-容斥原理)

题目大意:在[1,b]和[1,d]区间内分别取一个数,使得它们的最小公倍数为k。求出方案数(两数交换是同一种方案)解题思路:GCD(x, y) = k 等价于 GCD(x/k, y/k) = 1。原问题等价于,在[1,b/k]和[1,d/k]区间内分别取一个数,使得互质。分两段讨论这个问题:假设d/k < b/k1. 在[1, d/k]区间内取第一个数x,第二个数y也在[1, d/k]内取。去除两数交换的重复情况,可以直接使用欧拉函数,求出[1, x]中与x互质的个数。累加即可。2. 在[d/

2014-08-03 17:10:42 575

原创 HDU 2647 Reward(图论-拓扑排序)

题目大意:n个人,m条边,每条边a,b 表示a比b的工资要多,每个人的工资至少888,问满足关系的工资总和至少多少?如果出现关系矛盾,输出-1解题思路:根据工资关系建立拓扑图,0入度的人工资从888开始,一层一层,逐渐增加工资,若最后还有人入度不为0,则出现矛盾。

2014-08-03 17:08:06 825

原创 HDU 3988 Harry Potter and the Hide Story(数论-整数和素数)

题目大意:给定n和k, 求 n! 能被 k^i 整除时,i 的最大取值。解题思路:将k分解质因素,问题变为,(1×2×3×...×n) 要被 ( p1^(i*a1) × p2^(i*a2) × ... × pn^(i*an) ) 整除,即分子中各分母的质因数的幂次要大于等于分母。所以根据k的各质因素,求出满足各质因数的幂次 分子>=分母 的关系限制i,算出最大的i即可。这题要用到unsigned long long,比较坑。。

2014-08-03 16:07:39 858

原创 HDU 1988 Cube Stacking (数据结构-并查集)

题目大意:有N个立方体和N个格子,1~N编号,一开始i立方体在i号格子上,每个格子刚好1个立方体。现在m组操作,M a b表示将a号立方体所在的格子的全部立方体放在b号立方体所在的格子的全部立方体上面。C x表示询问x号立方体下面的立方体的个数。解题思路:在并查集的基础上,只需要知道x到父亲的距离以及父亲到底的距离就知道x到底的距离。sum[i]记录与根的距离,不断维护。

2014-08-03 15:49:41 770

原创 POJ 1703 Find them, Catch them(数据结构-并查集)

题目大意:T组测试数据,n个人,m组询问,2个帮派,D a b 表示 a,b 不在同一帮派 ,A a b表示查询a和b的关系。解题思路:并查集。将每个人对应两个节点,分属于两个帮派。1~n表示帮派1中的,n+1~2n表示帮派2中的。若知道a和b不是同一帮的,那么将a和b+n放到一个集合中,b和a+n放到一个集合中。并查集查询a和b的关系时,如果a与b+n在一个集合中,则说明他们不在同一帮;若a和b在同一集合,则在同一帮;否则说明他们关系不确定。连线时交叉连,即保证间隔两人在同一集合。即敌人的敌人是朋友

2014-08-03 15:21:19 871

原创 POJ 3367 Expressions(数据结构-二叉树)

题目大意:给定一颗满二叉树的后序遍历,小写字母表示叶子节点,以从下到上,从右到左的顺序输出这棵树。解题思路:用堆栈构建二叉树,再用bfs遍历树,用堆栈逆序输出。注意:构树时,若节点用malloc动态分配会超时。

2014-08-03 15:11:20 1738

原创 HDU 1796 How many integers can you find(组合数学-容斥原理)

How many integers can you findProblem Description  Now you get a number N, and a M-integers set, you should find out how many integers which are small than N, that they can divided exactly by

2014-08-03 12:31:26 604

原创 POJ 1947 Rebuilding Roads(动态规划-树形DP)

Rebuilding RoadsDescriptionThe cows have reconstructed Farmer John's farm, with its N barns (1 <= N <= 150, number 1..N) after the terrible earthquake last May. The cows didn't have time to rebu

2014-08-03 12:04:27 796

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除