Algorithm/BOJ(Baekjoon Online Judge)
[백준 2753번] 윤년 - JAVA //Wello Horld//
koucop
2019. 6. 26. 15:04
백준 알고리즘 2753번 윤년을 풀어보자
일반적으로 우리가 사는 1년은 365일 인데, 윤년일 경우 2월이 29일이 되어서, 366일이 된다.
4년에 1번씩 이 주기가 반복 되는데 예외가 존재한다.
이러한 연도와 윤년과의 관계에 대해 얘기해 주는 문제이다.
문제 자체는 매우 쉽다.
"윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다."
를 그대로 코드로 바꾸어 주면, (연도를 a 로 정의한다)
a % 4 == 0 && (a % 100 != 0 || a % 400 == 0)
와 같이 나타내 줄 수 있다.
윤년이면 "1" 을 윤년이 아니면 "0" 을 출력해야 되므로, 전체 코드는
import java.io.*;
import java.util.*;
public class sample{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if(a % 4 == 0 && (a % 100 != 0 || a % 400 == 0)) {
System.out.println("1");
} else {
System.out.println("0");
}
sc.close();
}
}
조건문만 알면 풀 수 있는 아주 쉬운 문제였네요.
조건문 안에를 어떻게 넣어야 될지 잘 모르는 사람들을 위해, 위에 코드를 풀어서 써드릴게요.
import java.io.*;
import java.util.*;
public class sample{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
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");
}
sc.close();
}
}