CCF 201912-01(報數)

 題目信息:參考鏈接

//01-報數
void numStat(){
    int a[4] = {0};
    int n, cnt = 1, i = 0, jmp = 0;//優化 去除jmp
    scanf("%d", &n);
    while(i < n){
        if(cnt % 7 == 0 || judge(cnt)){
            a[jmp % 4]++;
            cnt++;
            jmp++;
            continue;
        }
        //報數
        i++;//喊出
        jmp++;//輪詢
        cnt++;//1,2,....
    }
    for(i = 0; i < 4; i++){
        printf("%d\n", a[i]);
    }
}

int judge(int n){
    int i = n / 10, j = n % 10;
    while(i > 0){
        if(j == 7){
            return 1;
        }
        j = i % 10;
        i = i / 10;
    }
    if(j == 7){
        return 1;
    }
    else{
        return 0;
    }
}
int main(){
    numStat();
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章