CCF201912-1---报数---C++

tech2023-10-09  94

201912-1—报数使用语言:C++题目要求:题目要求是逢7跳过,不论是7的倍数还是含有7的!注意他的输入不是指报数到某一个数,而是指报多少个数!然后在做这道题的时候,小难点在怎么去给甲乙丙丁四个人累积跳过次数,题目固定是4个人,所以采用a[(i-1)%4]来确定到底是谁跳过!如何判断是7的倍数还是含有7,也是这道题目的关键。 #include<iostream> using namespace std; //int a[4]={0}; bool judge7(int x) { if(x%7==0){ //7的倍数 return 1; } int t=x; while(t){ if(t%10==7){ //含有7 return 1; } t/=10; } } int main(){ int n,i=0; cin>>n; int num=0; int a[4]={0}; for(i=1;num<n;i++){ if(judge7(i)){ if(i%4==0){ a[3]++; } else a[(i-1)%4]++; } else num++; } for(int i=0;i<4;i++){ cout<<a[i]<<"\n"; } return 0; }
最新回复(0)