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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

NYOJ 559 报数游戏

發(fā)布時間:2025/3/16 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NYOJ 559 报数游戏 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

報數(shù)游戲

時間限制:1000?ms ?|? 內(nèi)存限制:65535?KB 難度:2 描述
n 個人站成一行玩一個報數(shù)游戲。所有人從左到右編號為 1 到 n。游戲開始時,最左邊的人報 1,他右邊的人報 2,編號為 3 的人報 3,等等。當編號為 n 的人(即最右邊的人)報完 n 之后,輪到他左邊的人(即編號為n-1 的人)報 n+1,然后編號為 n-2 的人報 n+2,以此類推。當最左邊的人再次報數(shù)之后,報數(shù)方向又變成從左到右,依次類推。 為了防止游戲太無聊,報數(shù)時有一個特例:如果應(yīng)該報的數(shù)包含數(shù)字 7 或者是 7 的倍數(shù),他應(yīng)當用拍手代替報數(shù)。下表是 n=4 的報數(shù)情況(X 表示拍手)。當編號為 3 的人第 4 次拍手的時候,他實際上數(shù)到了 35。
?人?1?2?3?4?3?2?1?2?3
?報數(shù)?1?2?3?4?5?6?X?8?9
?人?4?3?2?1?2?3?4?3?2
?報數(shù)?10?11?12?13?X?15?16?X?18
?人?1?2?3?4?3?2?1?2?3
?報數(shù)?19?20?X??22?23?24?25?26?X
?人?4?3?2?1?2?3?4?3?2
?報數(shù)?X?2930?31??32?33?34?X?36

給定 n,m 和 k,你的任務(wù)是計算當編號為 m 的人第 k 次拍手時,他實際上數(shù)到了幾。 輸入
輸入包含不超過 10 組數(shù)據(jù)。每組數(shù)據(jù)占一行,包含三個整數(shù) n,m 和 k(2<=n<=100, 1<=m<=n, 1<=k<=100)。輸入結(jié)束標志為 n=m=k=0。
輸出
對于每組數(shù)據(jù),輸出一行,即編號為 m 的人第 k 次拍手時,他實際上數(shù)到的那個整數(shù)。
樣例輸入
4 3 1 4 3 2 4 3 3 4 3 4 0 0 0
樣例輸出
17 21 27 35
按游戲規(guī)則進行模擬求解!
AC碼:
#include<stdio.h> int n,m,k; int fun() {int i=0,j=1,flag=0,t;while(1){for(i=1,j=j;i<=n;i++,j++){if(i==m){if((j%7)==0){flag++;if(flag==k){return j;}}else{t=j;while(t!=0){if((t%10)==7){flag++;if(flag==k){return j;}break; // 因為少了一個break,糾結(jié)了一上午啊}t=t/10;}}}}for(i=n-1,j=j;i>1;i--,j++){if(i==m){if((j%7)==0){flag++;if(flag==k){return j;}}else{t=j;while(t!=0){if((t%10)==7){flag++;if(flag==k){return j;}break;// 因為少了一個break,糾結(jié)了一上午啊}t=t/10;}}}}}return 0; } int main() {while(scanf("%d%d%d",&n,&m,&k)&&(n+m+k)){printf("%d\n",fun());}return 0; }

總結(jié)

以上是生活随笔為你收集整理的NYOJ 559 报数游戏的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。