ブルーブリッジシミュレーショントーナメント:逆マルチテスト

問題の説明

3つの整数a、b、およびcが与えられ、整数がaの整数倍でも、bの倍数でも、cの整数倍でもない場合、この数値は逆倍数と呼ばれます。
  1からnまでの逆倍数はいくつありますか?
入力フォーマット入力
  の最初の行には整数nが含まれています。
  2行目には、2つの隣接する数値の間のスペースで区切られた3つの整数a、b、cが含まれています。
出力フォーマット
  出力行には、回答を表す整数が含まれています。
サンプル入力
30
2 3 6
サンプル出力
10
試料については
  1、5、7、11、13、17、19、23、25、29次の数字は、要件を満たしています。
評価ユースケースのスケールと規則評価ユースケースの
  40%について、1 <= n <= 10000。
  テストケースの80%で、1 <= n <= 100000。
  すべての評価ケースで、1 <= n <= 1000000、1 <= a <= n、1 <= b <= n、1 <= c <= n。


コード:


import java.util.ArrayList;
import java.util.Scanner;

public class 测数 {
    
    
	public static void main(String[] args) {
    
    
		Scanner s=new Scanner(System.in);
		int n=s.nextInt();
		int a=s.nextInt();
		int b=s.nextInt();
		int c=s.nextInt();
		if(n>0&&n<1000001&&a>0&&a<=n&&b>0&&b<=n&&c>0&&c<=n) {
    
    
			ArrayList<Integer> list=new ArrayList<Integer>();
			for(int i=0;i<=n;i++) {
    
    
				if(i%a!=0&&i%b!=0&&i%c!=0) {
    
    
					list.add(i);
				}
			}
			System.out.print(list.size());
		}
	}
}

おすすめ

転載: blog.csdn.net/DAurora/article/details/105655755