조건 중에 가장 강한 것을 찾는게 포인트이다.
"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);
}
}
'Programming > 알고리즘' 카테고리의 다른 글
[백준] 10950번 - "A + B - 3" - JAVA[자바] (0) | 2022.11.25 |
---|---|
[백준] 2480 - 주사위 세개 - java[자바] (0) | 2022.11.25 |
[백준] 1330 - 두 수 비교하기 -JAVA[자바] (0) | 2022.11.24 |
[백준] 2588번 - 곱셈 - JAVA[자바] (0) | 2022.11.23 |
[백준] 3003 - 킹, 퀸, 룩, 비숍, 나이트, 폰 (0) | 2022.11.23 |