最近开始学习排序。排序的作用不必多说,目前所见的比较坑的题不是用高精度运算就是用排序。正如Gromah大神所说:“不会排序学什么信息学竞赛啊!”于是在此总结一下,以便下一步学习。以下是目前学会的几个较简单的排序。
参考资料:
《信息学竞赛一本通》、《算法竞赛入门经典》、以及一个排序示意软件及其代码的所在网站:
http://panthema.net/2013/sound-of-s...
分类:
编程语言 时间:
2014-12-12 13:21:36
阅读次数:
268
本题可以看作是动态规划算法的简单应用。根据空间复杂度的不同,我写了4个不同的实现方法。
算法1:采用最原始的动态规划思维,用一个二维数组把杨辉三角各行元素都记录下来。从第一行开始,利用递推关系:a[i][j] =a[i-1][j-1] + a[i-1][j]; 计算出下一行的元素值。
算法2:观察递推关系,注意到第i行元素值由第i-1行确定,所以没必要把每一行的元素值都记录下来,只需记录两行就够了。我们可以用两个一维数组记录杨辉三角上一行和当前输出行元素,利用递推关系:curRow[j] =preRow[j...
分类:
其他好文 时间:
2014-12-12 13:20:47
阅读次数:
115
/***Date : 2014.12.10***/
//递推算法:是理性思维模式的代表,根据已有的数据和关系,逐步推导而得出结果。
//执行过程:1)根据已知的结果和关系,求解中间结果。
///////////////////// 2)判断是否满足要求,若未满足,则继续根据已知结果和关系求解中间结果;若满足要求,则表示寻找到一个正确答案。
//13世纪,意大利数学家斐波那契的《算盘书》中记...
分类:
编程语言 时间:
2014-12-11 00:20:59
阅读次数:
165
常用于去随机数的函数为rand()(在stdlib.h头文件中,不同的编译器可能有不同),但是实际在使用这个函数时却发现每次程序运行产生的数都是一样的,这是什么原因呢?其实是它的用法不正确. 随机数实际上都是根据递推公式 由初始数据(称为种子)计算的一组数值,当序列足够长,这组数值近似满足均匀...
分类:
编程语言 时间:
2014-12-10 22:37:36
阅读次数:
278
大数计算: 由于编程语言提供的基本数值数据类型表示的数值范围有限,不能满足较大规模的高精度数值计算,因此需要利用其他方法实现高精度数值的计算,于是产生了大数运算。大数计算简析: 大数计算实现的理论是,首先提取输入值赋予指定String字符串。 通过String.charAt(index)...
分类:
其他好文 时间:
2014-12-10 15:58:55
阅读次数:
232
来源:http://acm.hdu.edu.cn/showproblem.php?pid=1753
大明A+B
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 8960 Accepted Submission(...
分类:
其他好文 时间:
2014-12-10 00:39:15
阅读次数:
179
(接上篇http://www.cnblogs.com/daipeiwu/p/4134694.html)重写* 1 BigInteger operator * (const BigInteger& b){ 2 BigInteger c,d; 3 c.s.clear();...
分类:
其他好文 时间:
2014-12-09 21:08:19
阅读次数:
400
随着上海赛区比赛的结束,2014赛季也告一段落了。是时候总结一下。。从网络赛开始。。就深感到自己实力的不足,除了牡丹江网络赛中出了一道搜索+剪枝之外,似乎我就没有做出什么贡献。。总是冒充Java专业选手写写高精度。。上网百度模板什么的。。尝试开了几次大模拟或者复杂搜索也没能够现场做出来。总之就是感觉...
分类:
其他好文 时间:
2014-12-09 01:46:04
阅读次数:
158
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1413题意:题中给了图,所以不看字大概也知道 求的是第n个图形的面积。就是找规律 递推 一类的...先给结论:很鬼畜的公式: 递推式是: 重点在于17和7是怎么来的。在题图的基础上画些个框框 观...
分类:
其他好文 时间:
2014-12-09 00:20:02
阅读次数:
331
数值计算之高精度加减乘除一. 高精度正整数的高精度计算1.加法2.减法减法和加法的最大区别在于:减法是从高位开始相减,而加法是从低位开始相加3.乘法:用高精度加法实现l 乘法的主要思想是把乘法转化为加法进行运算。请先看下面的等式: 12345*4=12345+12345+12345+12345 12...
分类:
编程语言 时间:
2014-12-08 21:20:22
阅读次数:
211