CCF201912-1 报数(100分)模拟
Posted 海岛Blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CCF201912-1 报数(100分)模拟相关的知识,希望对你有一定的参考价值。
报数
问题链接:CCF201912-1 报数
问题分析:
用模拟法解决。
程序说明:
变量num用于计数,变量count用于计数数数的数量,数组cnt[]用于统计每个人的报数数量。
参考链接:(略)
提交后得100分的Python语言程序如下:
# CCF201912-1 报数
n = int(input())
num = 1;
count = 1;
cnt=[0, 0, 0, 0]
while count <= n:
if num % 7 == 0 or '7' in str(num):
cnt[(num - 1) % 4] += 1
else:
count += 1
num += 1
for i in range(4):
print(cnt[i])
提交后得100分的C语言程序如下:
/* CCF201912-1 报数 */
#include <stdio.h>
#define N 4
int have7(int n)
while(n)
if(n % 10 == 7) return 1;
else n /= 10;
return 0;
int main(void)
int n, num = 1, count = 1, cnt[N] = 0, 0, 0, 0;
scanf("%d", &n);
while(count <= n)
if(num % 7 == 0 || have7(num))
cnt[(num - 1) % N]++;
else
count++;
num++;
int i;
for(i = 0; i < N; i++)
printf("%d\\n", cnt[i]);
return 0;
以上是关于CCF201912-1 报数(100分)模拟的主要内容,如果未能解决你的问题,请参考以下文章