Undergraduate Records
[20하계] 1회차 결과 보고서 - 알고리즘 문제 풀기
ire4564
2020. 7. 1. 23:56
[문제 1476번: 날짜 계산 문제 해결]
위의 문제에 대한 해결 코드이다. 브루트포스에 관련된 문제였으므로, 완전 탐색을 이용하여 문제를 해결하였다.
각각의 수가 범위가 정해져있으므로, 그 범위를 넘어서면 숫자가 초기화가 되도록 한다. 그러한 과정을 반복적으로 계속 거쳐서, 세 개의 수가 같아질 때까지 계속 반복문 루프를 돌면서 몇 년도인지 알 수 있게 되는 방식으로 문제를 해결하였다.
import java.util.Scanner;
public class P1476 {
public static void main (String args[]) {
Scanner scan = new Scanner(System.in);
//완전탐색 이용
int e=1, m=1, s=1; //user input
int E = scan.nextInt();
int S = scan.nextInt();
int M = scan.nextInt();
int year = 1;
while(!(e==E && s==S && m==M)) {
++e;
++s;
++m;
if(e==16) {
e=1;
}
if(s==29) {
s=1;
}
if(m==20) {
m=1;
}
year++;
}
System.out.println(year);
}
}