Java—整除
Description
求1到n范围内能被 5 或 6 或 8 整除的数的个数。
Input
多组数据,处理到文件结尾。
每行输入一个n;
Output
输出结果,每个结果占一行。
Sample
Input
1000
Output
400
Hint
1到n被6整除数的个数为n/6(取整)。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner reader = new Scanner(System.in);
int n, a;
while (reader.hasNext()) {
n = reader.nextInt();
a = n / 5 + n / 6 + n / 8 - n / 30 - n / 24 - n / 40 + n / 120;
System.out.println(a);
}
}
}
此题是要求求1到n范围内能被 5 或 6 或 8 整除的数的个数,提示里给了一种做法“1到n被6整除数的个数为n/6(取整)”这种做法可以结合“容斥原理”