经典算法 | 您所在的位置:网站首页 › 韩信点兵中的数学原理 › 经典算法 |
搞开发的人都需要积累一些经典算法,以备不时之须。 搞开发也有好几年了,积累的一些算法一直没做过整理,这段时间无聊就把这些算法整理以下,以备以后之用。 本文是关于阶梯的一个算法,用到了剩余定理算法,分享下: 爱因斯坦曾出过这样一道有趣的数学题,有一个长阶梯,每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶,若每步上5阶,后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后一阶也不剩。问至少有多少阶阶梯? 这个是我国古代的韩信点兵问题:古人用剩余定理口算或心算,有计算机以后,可以由计算机帮忙解决了,算法很简单(JAVA实现): package com.jack.arithmetic; /** * 韩信点兵算法 * @author jack * @date 2010/08/06 */public class Ladder { public static void main(String[] args) { int count = 0; while(count>=0){ if ((count % 2 == 1) && count % 3 == 2 && count % 5 == 4 && count % 6 == 5 && count % 7 == 0) { |
CopyRight 2018-2019 实验室设备网 版权所有 |