AOJ 0093
問題リンク Leap Year
・コメント
閏年を出力する問題です。今回のポイントは
1) 改行処理
2) 閏年の判定
でした。
改行処理は最初のアウトプット以降に行うように実装します。
閏年の判定は問題文に与えられた条件を実装しましょう。
・ソース
import java.util.Scanner; import java.util.List; import java.util.ArrayList; public class P0093 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int flag = 1; while (true) { int a = sc.nextInt(); int b = sc.nextInt(); // 終了条件 if (a == 0 && b == 0) break; // 改行処理 if (flag == 0) { System.out.println(); } flag = 0; List<Integer> list = new ArrayList<Integer>(); // 閏年の確保 for (int i = a; i <= b; i++) { if (i % 4 == 0 && (i % 400 == 0 || i % 100 != 0)) { list.add(i); } } // 閏年がないとき if (list.isEmpty()) { System.out.println("NA"); } // 閏年があるとき else { for (int i : list) { System.out.println(i); } } } } }