해당 년도가 윤년인지 아닌지 알아내는 문제 !
이 문제는 조건문 처리만 잘해주면 되는 문제이다.
먼저 윤년은 4의배수이면서 100의 배수가 아닐 때,
혹은 4의 배수이면서 동시에 400의 배수일 때
이렇게 총 2가지?의 조건이라고 보면 된다.
먼저 if문에 4의 배수인 경우를 넣어주고 4의 배수가 아닐 경우엔
0을 출력하게 해준다.
if문 안에서는 또 다른 if 문을 사용해야하는데
이 때는 해당연도가 100의 배수가 아니거나 || 400의 배수일 때의
조건을 넣어주면 되기 때문에
년도를 100으로 나눴을 때 나머지가 0이 아닌 경우 ||
년도를 400으로 나눴을 때 나머지가 0인 경우
이렇게 두가지 조건을 넣어주었다.
(4의 배수여야하고 + 100의 배수라면 윤년이 아님 ! 하지만 예외적으로 400의 배수일 경우엔 윤년!)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
if(A >= 1 && A <= 4000) {
if(A % 4 == 0) {
if(A % 100 != 0 || A % 400 == 0) {
System.out.println("1");
} else {
System.out.println("0");
}
} else {
System.out.println("0");
}
} else {
System.out.println("0");
}
}
}
|
cs |
'Etc > 백준(JAVA) 문제풀이' 카테고리의 다른 글
[백준] 2741번 Java 문제풀이 (0) | 2021.01.07 |
---|---|
[백준] 14681번 Java 문제풀이 (0) | 2021.01.07 |
[백준] 9498번 Java 문제풀이 (0) | 2021.01.07 |
[백준] 1152번 Java 문제풀이 (0) | 2021.01.07 |
[백준] 1001번 Java 문제풀이 (0) | 2021.01.07 |
댓글