阅读程序 回答问题——FindTheNumber
阅读下面程序,请回答如下问题:
问题1:这个程序要找的是符合什么条件的数?
问题2:这样的数存在么?符合这一条件的最小的数是什么?
问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间精确到分钟(电脑:单核CPU 4.0G Hz,内存和硬盘等资源充足)。
问题4:在多核电脑上如何提高这一程序的运行效率?
由于卸载了一次VS 2013 和2010 ,项目都删除了。。
之前编写了程序,运行了2个小时发现运行到了14位数,之后每多一位数需要时间*10,果断放弃。
1.想了一下给的程序的逻辑算法,程序要找的应该是一个只能被这个数组的2个连续的数不整除,其他28个都能整除的数。
2.应该是存在的,最小的应该是被2*3*4 ....*29的倍数,并且不能被30或31整除。
3.估计不出来。。。
4.改写程序,之前按照第2题想的方法改写了一个,也没运行出来,就没写。。
看了一下别人的博客,感觉自己想法还是简单了,偶数就能被2整除,9还能被3整除,得出的数应该更小。最小的数应该是不能被16,17整除,2^4,3^3,5^2,11,13,17,19,23,29,31的乘积,得出的结果是2123581660200。
第三题我之前算了一下大概10天多,结果看要求是精确到分钟 ——! 我就知道算的有问题,没敢写啊。