Programming/알고리즘
[백준] 2753 - 윤년 -JAVA[자바]
Gilbert_
2022. 11. 24. 16:31

조건 중에 가장 강한 것을 찾는게 포인트이다.
"4의 배수 " 조건을 가장 먼저 갖고 오는게 맞다고 생각하기 쉽상인데,
사실상 이 문제에서는
"400의 배수" 조건을 먼저 놓는 것이 좋다.
왜냐하면, 400의 배수라면 다른 조건을 생각하지 않고서도 무조건 윤년이기 때문이다.
그 뒤에 100의 배수의 조건을 넣는다.
400의 배수 조건이 없다면
100의 배수일 때는 무조건 윤년이 아니기 때문이다.
그 뒤에야 4의 배수 조건이 와야하는 것이 맞다.
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.BufferedReader;
public class Main {
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(br.readLine());
System.out.print((a%400 == 0) ? 1 :(a%100 == 0) ? 0 : (a%4 == 0) ? 1 : 0);
}
}