SWEA
swea 1948 [D2] 날짜 계산기 JAVA
녁이
2023. 11. 20. 20:16
728x90
반응형
풀이 :
각 월에 따른 날짜를 다 더해서 총 합끼리 비교. result = sumB - sumA + 1
1월은 제외
Code
public class Solution1948 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt(); // 테스트 케이스 개수
for (int tc = 1; tc <= T; tc++) {
int monA = sc.nextInt();
int dayA = sc.nextInt();
int monB = sc.nextInt();
int dayB = sc.nextInt();
int sumA = 0;
int sumB = 0;
int result = 0;
int[] days = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if (monA != 1) { // if문 쓰지 않아도 됨. monA가 1일때는 아래 for문 조건에 맞지 않아서 for문 실행 안됨.
for (int i = 0; i < monA - 1; i++) {
sumA += days[i];
}
sumA += dayA;
for (int i = 0; i < monB - 1; i++) {
sumB += days[i];
}
sumB += dayB;
} else {
sumA = dayA;
if (monB == 1) {
sumB = dayB;
} else {
for (int i = 0; i < monB - 1; i++) {
sumB += days[i];
}
sumB += dayB;
}
}
result = sumB - sumA + 1;
System.out.println("#" + tc + " " + result);
}
}
}
728x90
반응형