https://www.acmicpc.net/problem/2753
풀기전에 앞서 문제를 몇 번씩 읽어보면서 내 나름대로의 해석을 해보았다.
그러니까 내 해석에 따르자면,
윤년: 연도가 4의 배수이면서 100의 배수가 아닐때(두가지 조건 다 만족해야됨) / 400의 배수일때
* 숫자 x로 나눴을때 나머지가 0인 것을 x의 배수라고 한다.
ex)2012는 4로 나눴을 때 나머지가 0이지만 100으로 나누면 나머지가 존재한다. → 2012년은 윤년
ex2)2000은 400으로 나눴을 때 나머지가 0이다. → 2000년은 윤년
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int y = scanner.nextInt();
scanner.close();
if(y%4==0 && (y%100!=0 || y%400==0))
//윤년의 조건을 입력한다.
System.out.println("1");
else System.out.println("0");
}
}
학원에선 보통 간단한 조건들을 주고 조건문을 작성해보라고 하는데이런 구체적이면서 복잡한(?) 조건들로 조건문을 만들려고 하다보니 시작도 전에 겁을 먹었었다.이런 경험들이 다 내 코딩 실력에 도움이 될거라고 생각하고 앞으로도 열심히 문제를 풀어보려고 한다.
'알고리즘 > 백준(JAVA)' 카테고리의 다른 글
[JAVA-1929] 소수 구하기 - 에라토스테네스의 체 (0) | 2023.08.30 |
---|---|
[JAVA-3052] 나머지 (0) | 2023.01.15 |
[JAVA-9498] 시험 성적 (0) | 2021.12.07 |
[JAVA-1330] 두 수 비교하기 (0) | 2021.12.07 |
[JAVA-10430] 나머지 (0) | 2021.12.07 |
댓글