https://www.dotcpp.com/oj/problem1655.html
写一道水题
这个题主要是练习循环定义的
1.变量的含义
a[N]表示当前小朋友状态,0存在 ,1不存在
num当前的数
i当前的小朋友序号
count当前出列的个数(退出循环的条件)
2.循环的含义
如果此状态位是0正常处理,else后加。
#include<iostream> #include<stdio.h> #include<math.h> #include<algorithm> #define N 10002 using namespace std; int main(){ int n; int a[N]={0},num,i,count; cin>>n; num=1,i=1,count=0; while(1){ if(a[i]==0){ if(num==3){ a[i]=1; count++; if(count==n){ cout<<i; break; } } num=num%3+1; } i=i%n+1; } return 0; }