2019-12-1 报数
问题描述
试题编号: | 201912-1 |
试题名称: | 报数 |
时间限制: | 1.0s |
内存限制: | 512.0MB |
问题描述: |
/*2019-12-1 报数*/ /*解: 跳过的条件 (1)7的倍数 (2)含有7,即某一位为7 (3)甲必定为4的倍数+1,乙丙丁同理 综上所述,*/ /*2019-12-1 报数*/ #include<stdio.h> int fun(int n)//判断是否含有7,有则返回1,无则返回0 { while(n!=0) { int m=n%10; n=n/10; if(m==7) { return 1; } } return 0; } int main () { int n; int a=0,b=0,c=0,d=0; scanf("%d",&n); int cnt=0;//报数的次数 int i=1;//每次的数字 while(cnt<n) { int f = fun(i); //printf("%d\n",f); if(i%4==1)//甲报数 { if(i%7==0||f==1)//甲跳过 a++;//甲跳过次数 计数 else//甲没跳过,如1,5,9,13 cnt++; } else if(i%4==2) { if(i%7==0||f==1) b++; else cnt++; } else if(i%4==3) { if(i%7==0||f==1) c++; else cnt++; } else if(i%4==0) { if(i%7==0||f==1) d++; else cnt++; } i++; } //printf("%d %d\n",i,cnt); printf("%d\n%d\n%d\n%d\n",a,b,c,d); return 0; }
|
本文来自博客园,作者:永恒&,转载请注明原文链接:https://www.cnblogs.com/Sun-yuan/p/14455968.html