728x90
// brain Storming
// 조건
// 윤년 == 4의배수인 연도 중 100의 배수가 아닌 연도 or 400의 배수인 연도
// 4의 배수이면서 100의 배수가 아님 : (year%4 == 0) and !(year%100 == 0)
풀이
4배수인지를 구하는 방법은 num%4를 해서 나머지가 0이 나오면 해당 배수이고 다른 수가 나오면 4의 배수가 아니다
그렇기에 year%4 == 0이면 이라는 조건과 동시에 100의 배수가 아니어야 하기에 &&(and)조건으로 100의 배수가 아닌 조건 !(year%100 == 0)을 주어서 윤년을 구했고
마찬가지로 400의 배수도 year%400 == 0으로 구했다
이외의 나머지 else는 전부 평년
정답
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int year = Integer.parseInt(br.readLine());
if(((year%4 == 0) && !(year%100 == 0))){
System.out.println("1");
}else if(year%400 == 0){
System.out.println("1");
}else{
System.out.println("0");
}
}
}
728x90
반응형
'코딩테스트' 카테고리의 다른 글
[코딩테스트][백준] Step2-5 2884번 : 알람 시계 (0) | 2022.11.11 |
---|---|
[코딩테스트][백준] Step2-4 14681번 : 사분면 고르기 (0) | 2022.10.10 |
[코딩테스트][백준] Step1-10 3003번 : 킹, 퀸, 룩, 비숍, 나이트, 폰(feat.약간 다른 로직) (0) | 2022.09.29 |
[코딩테스트][백준] Step2-1 1330번 : 두 수 비교하기(feat.BufferedReader+StringTokenizer) (1) | 2022.09.29 |
[코딩테스트][백준] Step2-2 9498번 : 시험 성적 (0) | 2022.09.27 |