一二三四五 上山打老虎

CCF-CSP-2019-12-1报数

题目链接:http://118.190.20.162/view.page?gpid=T100

思路:两个临时标记,一个用来记录当前应该报的数,一个用来记录报出的数的个数。

代码:

#include<bits/stdc++.h>

using namespace std;
int a[5];
bool check(int x){
    if(x%7==0)return true;
    while(x){
      if(x%10==7)return true;
      x/=10;
    }
    return false;
}
int main (){
    int n;
    cin>>n;
    int num=0;
    int no=0;
    while(no<n){
        num++;
        if(check(num)){
            a[(num+3)%4]++;//
        }
        else no++;
    }
    //cout<<num<<endl;
    for(int i=0;i<4;i++)
        cout<<a[i]<<endl;
    return 0;
}

posted @ 2021-03-16 12:12  abestxun  阅读(73)  评论(0)    收藏  举报