信息学奥赛C++语言: 选夏令营旗手1
生活随笔
收集整理的這篇文章主要介紹了
信息学奥赛C++语言: 选夏令营旗手1
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【題目描述】
每年的“信息與未來”小學生夏令營活動,組織者均設計安排了許多有趣的活動。去年小明與許多同學一起參加的走迷宮就是其中的一項,他經過努力并取得了好成績。
今年小明又懷著極大的興趣來到了營地,首先看到組織者貼出的一個海報:挑選本次夏令營的旗手!由于報名的營員非常多,于是只好規定讓所有參加的N個人坐成一圈,并按順時針方向從1~N編號。由第1人開始進行1~M報數,報到M的人出圈,再從下一個人重新開始從1到m報數。如此進行下去,直到剩下一人為止,就是本次夏令營的旗手。
小明非常渇望能成為旗手,你能編一個程序幫助他實現愿望嗎?如果可以的話,你的程序應輸出小明在圈中的編號。
【輸入】
鍵盤輸入二個整數N,M (2≤N,M≤10000,N≥ M )。
【輸出】
輸出到屏幕 。一個整數,表示小明在圈中的編號。
【輸入樣例】
9 3
【輸出樣例】
1
代碼
#include<bits/stdc++.h> using namespace std; int n,m,t,j,a[10001]; int main() {scanf("%d%d",&n,&m);for(int i=1;i<=n-1;i++){t=0;while(t<m){if(j==n)j=0;j++;if(a[j]==0)t++;}a[j]=1;}for(int i=1;i<=n;i++){if(a[i]==0){printf("%d",i);return 0;}}return 0;}總結
以上是生活随笔為你收集整理的信息学奥赛C++语言: 选夏令营旗手1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通C++语言——1011:
- 下一篇: 将字符串中的小写字母转换成大写字母 (信