上一页 1 2 3 4 5 6 ··· 17 下一页
摘要: 最近几天状态不佳,没事的时候总想看下奥运会。。划分树看几天了,今天终于看完了。划分树主要是用来求 在一个区间[l,r]中第k大的数。以及小于当前数的和。首先看一道题目:http://acm.hdu.edu.cn/showproblem.php?pid=4251hdu 4251 The Famous ICPC Team Again非常裸的模板题,给n个数,m次询问,每次询问一个区间,输出该区间中间大的值。/*划分树:在区间[l,r]内找第k大的数*/# include<stdio.h># include<string.h># include<stdlib.h> 阅读全文
posted @ 2012-08-01 14:47 奋斗青春 阅读(1079) 评论(0) 推荐(0) 编辑
摘要: 矩阵乘法,好久没写过了,不过重要的还是找到规律。http://acm.hdu.edu.cn/showproblem.php?pid=2855因为(a+1)^n=+*a^1+*a^2+....+*a^n;所以把F(k)带入之后再化简就可得到然后就可以用矩阵乘法求斐波那契数列了。View Code 1 # include<stdio.h> 2 # include<string.h> 3 # include<stdlib.h> 4 int M; 5 struct matrix{ 6 int a[2][2]; 7 }; 8 matrix multi(matrix m 阅读全文
posted @ 2012-07-26 09:05 奋斗青春 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 额,累死了,,快十天了没更新博客啦,这些天一直在做二分匹配,截止到刚才终于把hdu Index By Type里面的match做完啦。。好吧,一题一题开始说。http://acm.hdu.edu.cn/showproblem.php?pid=2236无题II一般遇到使最大最小差值最小的问题,要想到二分答案,然后枚举下限,对于每一种情况判断是否可行。因为每行没列都选一个,所以用到二分匹配,行在A中,列在B中,这样每一个数都代表从A到B的一条边。然后判断在这样的一种情况下,能否找得到一组完备匹配。View Code 1 # include<stdio.h> 2 # include< 阅读全文
posted @ 2012-07-18 18:25 奋斗青春 阅读(795) 评论(0) 推荐(0) 编辑
摘要: 偶然间做到2426题,发现是二分图最优匹配,,以前一直没看过,于是就学习了下KM算法。上网搜的课件发现都是同一个版本。。。木办法了,只有硬着头去看了。看了两天,终于略有一点收获。。hdu 2426:http://acm.hdu.edu.cn/showproblem.php?pid=2426需要注意一点负权直接舍弃。代码虽然AC了,但是对于这样的例子一直没能通过2 1 20 0 21 0 3因为看他们的标程,对于每一个X点集 中的点只有在Y点集 中找到与之相匹配的点的时候才退出循环。0与0 匹配之后,1怎么也找不到点与之匹配了,所以造成了死循环。感觉有两点处理方法,一种是先用二分图最大匹配匈牙利 阅读全文
posted @ 2012-07-09 17:14 奋斗青春 阅读(660) 评论(0) 推荐(1) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3955题意很难懂,读懂的话就是一道比较容易的广搜题。需要注意几个优先关系:1.判断是否在敌人的控制区域间穿梭2.判断是否有路3.判断是否有河流4.正常的行进还需要注意一点 只要他现在有MPS哪怕很少 他都可以再走一步。View Code 1 # include<stdio.h> 2 # include<string.h> 3 # include<stdlib.h> 4 # include<queue> 5 # define N 105 6 using 阅读全文
posted @ 2012-07-06 20:46 奋斗青春 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 后海的槐树时而掉下一些丝状的莫名的东西,日光慢悠悠的溜了过去,时间过得很慢,却又很快。好吧,我承认,我也文艺了一把。不过说的也很对,时间过得很慢,却又很快。。转眼已是大三,哦,不再大三了,大四啦。大学的最后一个暑假仍然是在机房度过,苦逼的生活,艰苦的岁月我们还是熬了下来。希望能熬完最后一个暑假,做完最后一些比赛,然后挥手告别我的acm,告别它陪我的那段青葱岁月,无悔的时光。好啦,这只是后话啦。扯回来。。。。最小表示法今天大一的学弟问我最小表示法,我表示当时就凌乱了,从来没听说过啊有木有。。。然后就赶快上网搜了一下:http://wenku.baidu.com/view/976dc391daef 阅读全文
posted @ 2012-07-06 19:58 奋斗青春 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2837额,这两天做上了数论,搞了一个上午终于AC了,不过还是看了别人的代码。。就是利用一个公式A^B %C = A^( B%phi[C] + phi[C]) %C (B>=phi[C])大致思路还算清晰,就是要注意中间的细节。回头再看看吧~~View Code 1 # include<stdio.h> 2 # include<string.h> 3 # include<stdlib.h> 4 __int64 eular(__int64 num) 5 { 6 阅读全文
posted @ 2012-05-11 13:17 奋斗青春 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=12991/x + 1/y = 1/n因为x,y,n均为正整数,所以x,y均要大于n。设y=n+k;那么x=n^2 / k + n因为x为正整数,所以k为n^2的因子。因为1 ≤ n ≤ 10^9,所以不能枚举到n求n^2的因子个数。对于一个数n如果n=q1^a1 * q2^a2 *...qk^ak;q1,q2...qk均为n的素因子,那么n的因子个数就可以表示为(a1+1)*(a2+1)*...*(ak+1);n^2= n*n;所以n^2=q1^(2*a1) * q2^(2*a2)*...*qk^( 阅读全文
posted @ 2012-05-11 09:46 奋斗青春 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3221矩阵乘法和数学的结合。由题目意思可知:f[n]=f[n-1]*f[n-2];f的前面几项可以罗列出来:a^1*b^0,a^0*b^1,a^1*b^1,a^1*b^2,a^2*b^3....可以发现a的指数和b的指数均类似于斐波那契数列。用矩阵的快速幂可以很快的求出第n项a和b的指数分别是多少。但是这个指数会非常大,存不下来,需要对一个数去模。这里需要用到一个公式:A^B%C=A^( B%Phi[C] + Phi[C] )%C (B>=Phi[C])Phi[C]表示不大于C的数中与C互质的 阅读全文
posted @ 2012-05-11 09:22 奋斗青春 阅读(1076) 评论(2) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1757矩阵相乘,需要构造一个10*10的矩阵。因为要把(f0 f1 f2...f8 f9) 乘以一个矩阵之后变成(f1 f2 f3 ... f8 f9 f10)并且f10=a0*f9 + a1*f8 + a2*f7 + ... + a8*f1 + a9*f0 ;所以构造这样的一个矩阵:/* 0 0 0 0 0 0 0 0 0 a9 1 0 0 0 0 0 0 0 0 a8 0 1 0 0 0 0 0 0 0 a7 0 0 1 0 0 0 0 0 0 a6(f0 f1 f2 f3 f4 f5 f6 f 阅读全文
posted @ 2012-05-09 12:01 奋斗青春 阅读(732) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 17 下一页