基础算法研究
文章平均质量分 76
xiaozhuaixifu
这个作者很懒,什么都没留下…
展开
-
完美之星编程大赛 复赛第二场 24点
题目描述:描述: 两人用一副扑克(王牌除去)玩24点,规则是这样的:两人各出2张牌,谁先算出来谁赢,赢家收回已经算过的4张牌,最后看谁手里的牌多。四张牌分别用4个扑克牌面字符表示。A,1,2,3,4,5,6,7,8,9,10,J,Q,K 分别代表数字1,2,3,4,5,6,7,8,9,10,11,12,13。其中每张牌只能使用一次;任意使用 +, –, *, /, ( ) ,构造出一个表达式,原创 2013-06-01 13:18:33 · 1246 阅读 · 0 评论 -
【InversionCount 逆序对数 + MergeSort】
Definition of Inversion: Let (A[0], A[1] ... A[n], n A[j], then the pair (i, j) is called inversion of A.Example:Count(Inversion({3, 1, 2})) = Count({3, 1}, {3, 2}) = 2思路,如果用brute force,则O(n^2)原创 2014-04-26 22:02:10 · 1735 阅读 · 0 评论 -
九度OJ月赛---题目1534:数组中第K小的数字 (二分搜索)
题目描述:给定两个整型数组A和B。我们将A和B中的元素两两相加可以得到数组C。譬如A为[1,2],B为[3,4].那么由A和B中的元素两两相加得到的数组C为[4,5,5,6]。现在给你数组A和B,求由A和B两两相加得到的数组C中,第K小的数字。输入:输入可能包含多个测试案例。对于每个测试案例,输入的第一行为三个整数m,n, k(1紧接着两行, 分原创 2013-09-18 22:33:03 · 1517 阅读 · 0 评论 -
九度OJ 题目1371:最小的K个数
题目描述:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。输入:每个测试案例包括2行:第一行为2个整数n,k(1第二行包含n个整数,表示这n个数,数组中的数的范围是[0,1000 000 000]。输出:对应每个测试案例,输出最小的k个数,并按从小到大顺序打印。样例输入:8 4原创 2013-09-09 00:56:11 · 1433 阅读 · 0 评论 -
2013腾讯编程马拉松初赛第二场(3月22日) 小Q系列故事——为什么时光不能倒流 ---好水!!
我以为我会是最坚强的那一个 我还是高估了自己 我以为你会是最无情的那一个 还是我贬低了自己 就算不能够在一起 我还是为你担心 就算你可能听不清 也代表我的心意 那北极星的眼泪 闪过你曾经的眼角迷离 那玫瑰花的葬礼 埋葬的却是关于你的回忆 如果时光可以倒流 我希望不要和你分离 如果注定分离 我希望不要和你相遇 ——摘自《小Q失恋日记原创 2013-08-02 21:40:31 · 1563 阅读 · 0 评论 -
90%程序员无法正确实现二分查找 庞果在线
“我很惊讶:在足够的时间内,只有大约10%的专业程序员可以把这个小程序写对。但写不对这个小程序的还不止这些人:高德纳在《计算机程序设计的艺术 第3卷 排序和查找》第6.2.1节的“历史与参考文献”部分指出,虽然早在1946年就有人将二分查找的方法公诸于世,但直到1962年才有人写出没有bug的二分查找程序。 ”——乔恩·本特利,《编程珠玑(第1版)》第35-36页。 请实现二分查找,完成函数:原创 2013-05-23 04:53:33 · 936 阅读 · 0 评论 -
庞果英雄会---寻找直方图中面积最大的矩形---编程挑战
题目链接:http://hero.pongo.cn/home/index这里给出一个线性算法和一个平方算法,第一个算法没有问题,挑战成功。第二个算法测试了很多数据但是失败,有大神路过,恳请点拨。#include using namespace std; int g[500],index[500];int max_rect(int x[], int n) { int s = 0,原创 2013-07-05 15:12:50 · 1002 阅读 · 0 评论 -
字符串完美度---庞果编程挑战
#include #include #include #include #include #include using namespace std原创 2013-07-13 18:17:53 · 1114 阅读 · 0 评论 -
南阳理工ACM-OJ 分数加减法 最大公约数的使用
http://acm.nyist.net/JudgeOnline/problem.php?pid=111简单模拟:#include #include #include using namespace std;int gcd(int a,int b){ if(a<b)return gcd(b,a); if(b==0)return a; return gcd(b,a%b);}原创 2013-07-07 21:39:29 · 1622 阅读 · 0 评论 -
一些重要的算法------启发式搜索,束搜索(beam search),二分查找算法 and so on............
转自:http://coolshell.cn/articles/2583.html下面是一些比较重要的算法,原文罗列了32个,但我觉得有很多是数论里的,和计算机的不相干,所以没有选取。下面的这些,有的我们经常在用,有的基本不用。有的很常见,有的很偏。不过了解一下也是好事。也欢迎你留下你觉得有意义的算法。(注:本篇文章并非翻译,其中的算法描述大部份摘自Wikipedia,因为维基百科描述转载 2013-06-19 19:40:43 · 9305 阅读 · 0 评论 -
C++ string 实现大整数相加减
任意两个大整数的加减算法,可自动判断正负号,代码如下:#include #include #include #include #include using namespace std;string BigInegerAdd(string s1, string s2) // s1+s2;{ int len = s1.size()>s2.size()?s1.size()+1:s原创 2014-07-31 15:45:56 · 4272 阅读 · 1 评论