电脑安全

您当前的位置:主页 > 电脑安全 >

用php解决一个数学题【已有很多高手解决,期待

来源:[db:来源]标题:   算法    编辑:电脑技术全能网 时间:2019-09-18 16:51

原标题:用php解决一个数学题【已有很多高手解决,期待
   http://www.dnjishu.com/html/00/54500_itemid_29653.html一个六位数,当分辨用2,3,4,5,6乘它后,失掉的五个乘积都是一个六位数,并且这失掉的五个数是由本来六个数字构成,只是次序转变了!求妙手关心处理下!---------------貌似各人都默许了一个景象 http://www.dnjishu.com/viewthread.php?tid=54377&page=5#pid394850 之条件出的一个假定 貌似各人做算法的时间都不斟酌这类情形的存在能够 假如哪位有论证过这类假定不建立或许楼主的标题自身就默许不斟酌这类假定 请大侠们阐明一下 假如没有论证或许标题没有明白阐明不斟酌这类假定 算法计划再好也是分歧题意的有效算法------------------------ 写了两种算法: 第一种思绪是推断相乘的数的各个位之和能否相称,不外效力不太好。 第二种算法换了一种思绪,用了字符反偏向考证,由于正向会有一局部高位的不用要的运算。代码很简练,效力很不错,附上代码: 第一种算法,推断各个位数之和: =========================================================== 第二种算法,字符反偏向查问: 第一个算法在我的PE2140@2.66GHz上须要440ms,第二种只要要180ms。 ---------------------------------我之条件过这个成绩了http://www.dnjishu.com/bbs/thread-54377-2-1.html 处理的方式有一个: 得出每一名,一一位消除. 如得两个位数雷同,则两个同时删除或变动. 比方: ''123451''和''123456'' 逐位删除或变动的话,剩下的一名就不等了.---------------------------------- for($i = 100000;$i < 166667;$i++)//数的范畴 { .... for($ii=2;$ii<7;$ii++)// 2-6的倍数 { ..... for($j=0;$j<6;$j++) //数的个数 { if(strpos($i,substr($i*$ii,$j,