這周作業1是看懂張老師的一個C#程式(http://www.cnblogs.com/qingxu/p/5279438.html)
剛開始沒看懂,一位Int64.MaxValue的值為64,(T_T),我太天真了,
其實他是想找一個數,不能被rg數組中兩個連續的數整除,能被這兩個數後的所有 數整除,将這樣的一個數列印出來。
1,首先排除2~15的15 個數,因為能整除16~30的數一定能整除2~15
2,從16開始連續2個數不能被整除,去最小為16,17,
是以這個數為7*8*11*13*19*23*25*27*29*31=2123581660200
為啥呢首先假如這個數為31!=31*30*29*28*27*26*25*24*23*22*21*20*19*18*17*16*15*14*13*12*11*10*9*8*7*6*5*4*3*2*1
則30=10*3,是以30可以約掉,同理,28=4*7,可以約掉,
同理剩下質數之積=31*29*23*19*17*13*11*7*5*3*2
但是由于這個數還必須整除27=3*3*3,約掉3乘27
25=5*5,約掉5乘以25
16=8*2,但是上面推出不能整除16,是以約掉2再乘8
這個數最小=31*29*23*19*17*13*11*7*27*25*8=2123581660200
現在說說為啥是選16,17
取個極端的兩個數,如果30,31不能整除,在31,29,23,19,17,13,11,7,27,25,8中去掉31再16*17,而31<16*17
是以選不能整除16,17
3我沒看懂其他的做法,
運作時間不會計算,參考同學的(http://www.cnblogs.com/yzdd/p/5283887.html#3385425)也沒看懂...
單核CPU4.0G HZ 執行速度為4*10^9/s。(2)外層循環2123581660200次。(3)執行一次%操作用80個CPU周期(http://blog.sina.com.cn/s/blog_65ba9a5e0102v2ih.html)。(4)内層循環次數取決于i,i奇數5次(不能整除2,4),i偶數估計最多執行15次,(方法類似于附錄一 2)平均8次。因為i連續增長即i 奇偶交替,是以兩種情況取平均值再加上其他判斷和指派語句,得出内層循環次數約為80*(7+5)=960次。(5)總次數=外層*内層(6)執行時間=總次數/每秒執行速度*60=8500min