代码改变世界

随笔分类 - Algorithm

HDU第11版解题报告(农夫版)

2009-08-23 21:08 by 老博客哈, 2387 阅读, 收藏, 编辑
摘要: 话说这是两年前我给05级培训时开始写的东东了,不过最近才把它完结掉。HDU11版比较简单,但是特别适合入门ACM的童鞋。这个解题报告在对每一题解答的同时,也相应的进行了部分的扩展。欢迎大家给出意见和建议!谢谢!HDU第11版解题报告(农夫版)这里要感谢hwl,lj,ydk,xxy,hj,wxh等同学在09年暑假里的理解和支持,感谢zmq,lwq,wjf,whs同学对本文的审校! 阅读全文

第(前)k大数问题

2009-08-23 19:35 by 老博客哈, 5337 阅读, 收藏, 编辑
摘要: 所谓“第(前)k大数问题”指的是在长度为n(n>=k)的乱序数组中S找出从大到小顺序的第(前)k个数的问题。解法1: 我们可以对这个乱序数组按照从大到小先行排序,然后取出前k大,总的时间复杂度为O(n*logn + k)。解法2: 利用选择排序或交互排序,K次选择后即可得到第k大的数。总的时间复杂度为O(n*k)解法3: 利用快速排序的思想,从数组S中随机找出一个元素... 阅读全文

一类棋盘互不攻击问题

2008-10-08 21:03 by 老博客哈, 2740 阅读, 收藏, 编辑
摘要: 一类棋盘互不攻击问题 农夫三拳@seu(drizzlecrj@gmail.com) 最近在SGU上做了一些棋盘上互不攻击的题目,稍稍的总结一下:1. SGU 220 Little Bishops以及 SGU 221 Big Bishops问题: 求n*n的棋盘上放置k个互不攻击的象的个数。解法: 将棋盘旋转45度之后,转换成二维动态规划求解。具体参见 黑书243~244页转移的方程为 F(i,j)... 阅读全文

稳定婚姻问题(Stable Marriage Problem)

2008-09-12 20:14 by 老博客哈, 4586 阅读, 收藏, 编辑
摘要: 稳定婚姻是组合数学里面的一个问题。问题大概是这样:有一个社团里有n个女生和n个男生,每位女生按照她的偏爱程度将男生排序,同时每位男生也按照自己的偏爱程度将女生排序。然后将这n个女生和n个男生配成完备婚姻。如果存在两位女生A和B,两位男生a和b,使得A和a结婚,B和b结婚,但是A更偏爱b而不是a,b更偏爱A而不是B,则这个婚姻就是不稳定的,A和b可能背着别人相伴而走,因为他俩都认为,与当前配偶比起来... 阅读全文

2007 South Central USA Regional Programming Contest 解题报告

2008-08-15 13:44 by 老博客哈, 1262 阅读, 收藏, 编辑
摘要: 2007 South Central USA Regional Programming Contest 解题报告 农夫三拳@seu(drizzlecrj@gmail.com)一、官方网址:http://acm2007.cct.lsu.edu/二、解题报告1. One is an Interesting Number按照题目描述的意思去做。可以预处理一下106以内的平方数,立方数,四次方数,尽量避免... 阅读全文

Survey over pattern string match algorithm[6 items updated && to be continued]

2008-03-16 21:21 by 老博客哈, 1259 阅读, 收藏, 编辑
摘要: 1. BM算法R S Boyer, J S Moo re. A fast string searching algorithm. Communications of the ACM , 1977, 20 (10) : 762 - 772.http://www.cs.utexas.edu/~moore/publications/fstrpos.pdf2. QS算法MS算法 OM算法  Sunday ... 阅读全文

图象处理基本算法[整理]

2008-02-25 20:48 by 老博客哈, 37842 阅读, 收藏, 编辑
摘要: 1)将256*256分辨率的图像变为128*128分辨率可以将源图像划分成2*2的子图像块,然后将2*2的子图像块的所有像素颜色均按照F(i,j)的颜色值进行设定,达到降低分辨率的目的。如:F(i,j) F(i,j+1) F(i,j) F(i,j) F(i+1,j) F(i+1,j+1) 变成 F(i,j) F(i,j)(同理,256*256分辨率的图像变成64*64分辨率,只需要划分成4*4即可... 阅读全文

称球问题

2007-10-21 11:32 by 老博客哈, 2292 阅读, 收藏, 编辑
摘要: 称球问题的一个经典形式如下:"有十二个外表相同的球,其中有一个坏球,它的重量和其他十一个有轻微的(但是可以测量出来的)差别。现在有一架没有砝码的很灵敏的天平,问如何称三次就能保证找出那个坏球,并知道它比标准重还是轻。"这个问题比较好的叙述和解答可以参加《称球问题--经典智力题推而广之三》和 WC2003 何林的论文《一类称球问题的解法》(用到了三分及判定树的思想)。详细的过程我就不写了,把加个结论... 阅读全文

过桥问题

2007-10-20 20:18 by 老博客哈, 5394 阅读, 收藏, 编辑
摘要: 在漆黑的夜里,四位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,四个人一共只带了一只手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,四人所需要的时间分别是1、2、5、8分钟;而如果两人同时过桥,所需要的时间就是走得比较慢的那个人单独行动时所需的时间。问题是,如何设计一个方案,让这四人尽快过桥。 过桥问题详细的描述与解决方案请阅读《过... 阅读全文

货郎问题

2007-10-19 10:55 by 老博客哈, 4503 阅读, 收藏, 编辑
摘要: 货郎问题(Traveling Salesman Problem,简称“TSP”)也叫货郎担问题,中国邮路问题,旅行商问题等,是计算机算法理论历史上的经典问题。在过去几十年中,它成为许多重要算法思想的测试平台,同时也促使一些新的理论领域的产生,比如多面体理论和复杂性理论。 货郎问题:给定n个结点和任意一对结点{i,j}之间的距离为dist(i,j),要求找出一条闭合的回路,该... 阅读全文

灌水问题

2007-10-15 18:37 by 老博客哈, 1564 阅读, 收藏, 编辑
摘要: 灌水问题的经典形式是这样的:  “假设有一个池塘,里面有无穷多的水。现有2个空水壶,容积分别为5升和6升。问题是如何只用这2个水壶从池塘里取得3升的水。”  当然题外是有一些合理的限制的,比如从池塘里灌水的时候,不管壶里是不是已经有水了,壶一定要灌满,不能和另一个壶里的水位比照一下“毛估估”(我们可以假设壶是不透明的,而且形状也不同);同样的,如果要把水从壶里倒进池塘里,一定要都倒光;如果要把水从... 阅读全文

关于Frobenius Number[整理]

2007-10-13 21:10 by 老博客哈, 2214 阅读, 收藏, 编辑
摘要: 关于Frobenius Number农夫三拳@seu 给定n(≥2)个正整数a1,a2,…,an ,它们的最大公因数为1.求使不定方程a1x1+a2x2+…+anxn=F没有非负整数解(x1,x2,…,xn)的最大正整数F.这个数称为a1,a2,…,an的最大不可表数,记作F(a1,a2,…,an)。可以在wolfram上找到... 阅读全文

K皇后问题

2007-10-04 00:40 by 老博客哈, 10836 阅读, 收藏, 编辑
摘要: FZU比赛残留了一题搜索题K Queen 没做, 题目大意就是在m*n的棋盘上布置k个皇后,使得这k个皇后互不攻击(这里的攻击含义同“八皇后问题”,即两个皇后不可以在同一行,同一列及同一斜线上)。其中1≤m*n≤150,1≤k≤50,时限10s 其实从题目中我们可以推出一个很简单但是很重要的结论,即min(m, n)< ... 阅读全文

最大公约数(Gcd)两种算法(Euclid && Stein) [整理]

2007-09-14 01:13 by 老博客哈, 45983 阅读, 收藏, 编辑
摘要: 很老的东东了,其实也没啥好整理的,网上很多资料了,就当备用把:-)1. 欧几里德算法和扩展欧几里德算法欧几里德算法 欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大公约数。其计算原理依赖于下面的定理: 定理:gcd(a,b) = gcd(b,a mod b) 证明:a可以表示成a = kb + r,则r = a mod b 假设d是a,b的一个公约数,则有 d|a, d|b,而r = a ... 阅读全文

Nju第五届ACM程序设计竞赛 F题 Is Greed Correct

2007-05-23 12:49 by 老博客哈, 1978 阅读, 收藏, 编辑
摘要: Nju第五届ACM程序设计竞赛 F题Is Greed CorrectTime limit : 2 secondsMemory limit: 64 megabytes换零钱问题的典型问法为:给定一系列的硬币面值和一个需要找的钱数,要求把这个钱数换成硬币且使用的个数最少。对于这个问题,贪心法可以找到一个不错的解,但不一定是最优解。贪心法是这样的:假设要找的钱数是A,每次找出不大于A的最大的面值的硬币,... 阅读全文

记东南大学第四届逻辑算法程序设计竞赛决赛

2007-05-16 17:10 by 老博客哈, 1053 阅读, 收藏, 编辑
摘要: 记东南大学第四届逻辑算法程序设计竞赛决赛 农夫三拳@seu ... 阅读全文

东南大学第四届逻辑算法程序设计竞赛决赛解题报告

2007-05-16 14:34 by 老博客哈, 1571 阅读, 收藏, 编辑
摘要: 东南大学第四届逻辑算法程序设计竞赛决赛解题报告 农夫三拳@seu ... 阅读全文

东南大学2005年程序设计第二届初赛解题报告

2007-03-14 14:46 by 老博客哈, 2895 阅读, 收藏, 编辑
摘要: 东南大学第二届程序设计竞赛初赛解题报告 农夫三拳@seu drizzlecrj@gmail.com 记得这届比赛开始的时候,我还大一,当时C++刚学,没记错的话刚好是期中考试的时候,就和YT俩信誓旦旦的报了名,最后很不幸由于一些输入的问题搞错,只有唯一一题只打印的问题作出来了,好像由于**原因,被扣了一分,惨就一个字。今天我又回来了,为当初的Aeolus队报一箭之仇,再会会这么几道题目。 好了,废... 阅读全文

东南大学2004年程序设计第一届决赛解题报告

2007-03-06 22:10 by 老博客哈, 952 阅读, 收藏, 编辑
摘要: 东南大学第一届程序设计竞赛决赛解题报告 农夫三拳@seu drizzlecrj@gmail.com “善始者实繁,克终者盖寡”,既然初赛解题报告贴出来了,为了不做“寡人”,偶痛下心来做了一下决赛。决赛的题目相对初赛题量进行了减少 ,难度略有增加。为了大家能力的提高,这次就不传solution了。(里面有两题目前为止还没有找到Oj提交) 第一题Simp... 阅读全文

Sorting[翻译]

2007-03-05 16:38 by 老博客哈, 1127 阅读, 收藏, 编辑
摘要: Sorting 【原文见:http://www.topcoder.com/tc?module=Static... 阅读全文