본문 바로가기
Problem Solving/SWEA

[SWEA] 1948. 날짜 계산기

by 테리는당근을좋아해 2020. 2. 9.

문제

월 일로 이루어진 날짜를 2개 입력 받아, 두 번째 날짜가 첫 번째 날짜의 며칠째인지 출력하는 프로그램을 작성하라.

 

풀이방법

입력받은 두 날짜가 같은 월일 경우 일 수의 차이만 구하고,

 

다른 월일 경우 월을 차까지 구한다.

 

소스코드

package samsung;

import java.util.*;

public class s_1948 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int t = sc.nextInt();
		int[] m = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
		for(int i = 1; i <= t; i++) {
			int[] a = new int[4];
			int day = 0;
			for(int j = 0; j < 4; j++) {
				a[j] = sc.nextInt();
			}
			if(a[0] == a[2])
				day += a[3] - (a[1] - 1);
			else {
				day += m[a[0]] - a[1];
				for(int j = a[0] + 1; j < a[2]; j++) {
					day += m[j];
				}
				day += (a[3] + 1);
			}
			System.out.println("#" + i + " " + day);
		}
	}
}

 

댓글