常用算法
Louis19910615
这个作者很懒,什么都没留下…
展开
-
大数乘法
原题 对于32位字长的机器,大约超过20亿,用int类型就无法表示了,我们可以选择int64类型,但无论怎样扩展,固定的整数类型总是有表达的极限!如果对超级大整数进行精确运算呢?一个简单的办法是:仅仅使用现有类型,但是把大整数的运算化解为若干小整数的运算,即所谓:“分块法”。 如图【1.jpg】表示了分块乘法的原理。可以把大数分成多段(此处为2段)小数,然后用小数的多次原创 2012-12-06 09:19:42 · 898 阅读 · 0 评论 -
转方阵
原题 对一个方阵转置,就是把原来的行号变列号,原来的列号变行号 例如,如下的方阵: 1 2 3 4 5 6 7 8 9 10 11 1213 14 15 16 转置后变为: 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 但,如果是对该方阵顺时针旋转(不是转置),却是如原创 2012-12-04 21:03:43 · 722 阅读 · 0 评论 -
比酒量
原题有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,所有在场的人平分喝下,有几个人倒下了。再打开一瓶酒平分,又有倒下的,再次重复...... 直到开了第4瓶酒,坐着的已经所剩无几,海盗船长也在其中。当第4瓶酒平分喝下后,大家都倒下了。 等船长醒来,发现海盗船搁浅了。他在航海日志中写到:“......昨天,我正好喝了一瓶.......奉劝大家,开船不喝酒,喝酒别开船.原创 2012-11-30 12:27:16 · 825 阅读 · 0 评论 -
微生物增值
原题 假设有两种微生物 X 和 Y X出生后每隔3分钟分裂一次(数目加倍),Y出生后每隔2分钟分裂一次(数目加倍)。 一个新出生的X,半分钟之后吃掉1个Y,并且,从此开始,每隔1分钟吃1个Y。 现在已知有新出生的 X=10, Y=89,求60分钟后Y的数目。 如果X=10,Y=90 呢? 本题的要求就是写出这两种初始条件下,60分原创 2012-11-27 13:19:05 · 776 阅读 · 0 评论 -
基于遗传算法的高校排课系统研究
转载网址:http://blog.csdn.net/jitom515/article/details/1448122基于遗传算法的高校排课系统研究沈丽容 陈明磊(南京林业大学信息学院计算机科学与工程系 南京 210037) 摘 要 提出并实现了一种高校自动排课算法,利用遗传算法建立数据模型,定义一个包含教师编号、班级编号、课程编号、教室编号、上课时间段转载 2013-09-03 20:45:18 · 15123 阅读 · 5 评论 -
古堡算式
原题 福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式: ABCDE * ? = EDCBA 他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!” 华生:“我猜也是!” 于是,两人沉默了好久,还是没有算出合适的结果来。 请你利用计算机的优势,找到破解的答案。 把 ABCDE 所代表的数字写出来。代码#inc原创 2012-11-28 18:21:40 · 1835 阅读 · 0 评论 -
放旗子
原题 今有 6 x 6 的棋盘格。其中某些格子已经预先放好了棋子。现在要再放上去一些,使得:每行每列都正好有3颗棋子。我们希望推算出所有可能的放法。下面的代码就实现了这个功能。 初始数组中,“1”表示放有棋子,“0”表示空白。 int N = 0;bool CheckStoneNum(int x[][6]){ for(int k=0; k {原创 2012-12-08 09:52:44 · 821 阅读 · 0 评论 -
奇怪的比赛
原题 某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪: 每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。 每位选手都有一个起步的分数为10分。 某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)哪个题目答对了,哪个题目答错了吗?原创 2012-12-01 12:19:54 · 876 阅读 · 0 评论 -
霍纳法则及C语言实现
1.霍纳法则介绍 a. 求多项式值的一个快速算法 b. 假设有n+2个数,a0,a1,… an和x的组成的一个多项式,形式如下: ,通常都是一项一项的求和然后累加,这样的话要进行次乘法运算和n次加法运算,而霍纳法则就是一个改进的一个算法。通过变换得到如下式子: 这种求值的方法便是霍纳法则。(复杂度 为)2. 霍纳法则递...原创 2018-07-26 16:56:57 · 2004 阅读 · 0 评论