250pt:
題意:有最長N=17的一條格子,每個格子是W、B和R三種顏色之一,當某個格子上有兔子時,下一個回合該兔子按照以下的規(guī)則移動:
成都創(chuàng)新互聯(lián)成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目
成都網(wǎng)站制作、做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元東區(qū)做網(wǎng)站,已為上家服務(wù),為東區(qū)各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220
如果兔子在第一個格子,則向右移動一格;
否則如果兔子在倒數(shù)兩個格子,則向左移動一格;
否則如果兔子在W格上,則向左移動一格;
否則如果兔子在B格上,則向右移動一格;
否則兔子在R格上,如果是它第一次移動,則向左移動一格,否則回到上一步過來的地方。
每一輪每個兔子移動,然后最后一個格子消失,如果某個格子上有多于一只兔子,則這個格子上的兔子消失。整個過程一直持續(xù)到總格子數(shù)等于2為止?,F(xiàn)在在N個格子里面初始隨機放R只兔子,問最后期望剩下幾只兔子。
思路:模擬幾個你會發(fā)現(xiàn)因為每回奇數(shù)位置的要跳到偶數(shù)位置,反之也一樣。所以答案必然跟奇偶性有關(guān)系
很明顯,奇數(shù)上的會相互抵消,偶數(shù)也一樣。所以統(tǒng)計就很簡單了。再者枚舉一下初始位置即可。
code:
1 #line 7 "RabbitStepping.cpp"
2 #include
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #include
12 #include
View Code
500pt
題意:第一年7月天上掉下一對小兔子;之后:
每年3月,老兔子生一對小兔子,原來的小兔子升級為老兔子;
某些年的11月,消失一半兔子,消失的兔子總是年齡較大的那些。
現(xiàn)在給定最多50個兔子會消失一半的年份,問第K<=10^7年的12月一共有多少兔子。答案模MOD=1,000,000,009。
思路:如果沒有消失這一說,那么答案就是一個斐波那契數(shù)列。那就難在如何處理消失的。
而且每次%MOD后,再處理消失便會出問題。所以我們必須要用另外一個來記錄奇偶性。
由于最多消失50次,也就是說最多有50次的/2操作。那么我們直接記錄下當前答案%2^50的結(jié)果便可直到奇偶性。。
接下來直接模擬就行了。注意奇偶分開操作就行
code:
1 #line 7 "RabbitIncreasing.cpp"
2 #include
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #include
12 #include
View Code
網(wǎng)頁名稱:SRM475-創(chuàng)新互聯(lián)
當前鏈接:
http://weahome.cn/article/hcesi.html