日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

zcmu-1979

發布時間:2025/3/15 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 zcmu-1979 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1979: 過分的謎題

Time Limit:?1 Sec??Memory Limit:?128 MB
Submit:?73??Solved:?43
[Submit][Status][Web Board]

Description

2060年是云南中醫學院的百年校慶,于是學生會的同學們搞了一個連續猜謎活動:共有10個謎題,現在告訴所有人第一個謎題,每個謎題的答案就是下一個謎題的線索....成功破解最后一個謎題后,答案就是指向獎勵的線索
在所有同學們的努力下,全校同學們獲得了最后一個謎題,這個謎題有幾十張紙,上面全是密密麻麻的數字以及'.'
第一頁內容如下:
1,2,3,4,5,6
4,1,5,2,6,3
2,4,6,1,3,5
1,2,3,4,5,6
———3

1,2,3,4....32
.............
.............
———10

有細心的同學發現,這是對一組1-2n的序列進行如下移動:每次將前n個數字取出,按順序依次插入到位于n+1,n+2...2n的數字后面,最后的數字表示多少次移動后會變回原來的序列
第二頁內容如下:
1,2,3,4....64
.............
.............
———?

1,2,3,4....140
.............
.............
———?

同學們發現,越往后翻,這個序列的長度就越長,前面十幾二十個數字的序列同學們還可以一步一步模擬做出來,但是到后來幾千甚至上萬的長度,就沒有辦法計算了,甚至中間一步做錯,就步步都錯。
這個謎題真是太過分了!但是獎勵就在眼前,只要計算出所有答案,所有答案就是指引同學們獲得獎勵的線索,那么現在問題來了,同學們除了發現上面的n=最后那個數字/2之外,沒有辦法給你任何幫助,而作為一個計算機科學與技術專業的大佬,你自然就成為了同學們心目中拯救他們的英雄,所以你能不能寫一個程序,當你知道n是多少的時候,可以直接得出答案呢?

Input

多組測試數據.每組數據的第一行包含一個正整數n(1<= n<=10000).

Output

每組數據輸出一行整數表示最少需要經過幾次移動能變回原序列,若不能,則輸出"-1"

Sample Input

316

Sample Output

310 解析:起先一眼以為是找規律,不如說是模擬題。寫一下幾個樣例,比較出來每個數字都是 有規律變化的。就比如1這個數,總是先從0位置變到1,再3,再。。。最后回到原來的位置 0,那么我們就可以想到,對于其中任意的一個數我們可以找出它變化的規律就是這個數的 位置*2%(n+1),最后變到原先的位置看看它變化了多少次即所求結果。 代碼:#include<cstdio> #include<cstring> #include<algorithm> using namespace std;int main() {int n;while(~scanf("%d",&n)){int t=1;int x=2;n*=2;while(x!=1){x=(x*2)%(n+1);//printf("%d **\n",x);t++;}printf("%d\n",t);}return 0; }


總結

以上是生活随笔為你收集整理的zcmu-1979的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。