- 问题链接:报数
- 问题分析:模拟法解决。
- 程序说明:n表示报出n个数后游戏结束;i记录数字(含报出和未报出);count记录报出的数;skip数组记录跳过次数
- 程序代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int n = reader.nextInt();
int []skip = new int[4];
int count = 1;
int i = 1;
for(i=1;count<=n;i++) {
String s = String.valueOf(i);
if((i%7)==0 || s.indexOf('7')!=-1) {//含7或为7的倍数,跳过
skip[(i-1)%4]++;
continue;
}
count++;
}
for(int j=0;j<4;j++) {
System.out.println(skip[j]);
}
}
}