백준 algorithm
백준 1476 - 날짜 계산
cosmohoo
2020. 6. 1. 00:12
반응형
=> 브루트 포스를 활용해 우리가 알고 있는 연도 1년부터 올라가며 주어진 E S M과 같은 지 확인하면 됩니다.
-
E S M과 비교하며 증감을 연속하는 변수 세 개를 설정합니다. (goingE, S, M)
-
E S M 과 변수들이 같아질 때까지 while문을 통해 연속적으로 year의 값을 증가시킵니다.
-
E S M 각 변수들이 지닐 수 있는 최대의 숫자까지 갈 경우 다시 1로 돌아가도록 합니다.
-
E S M과 going 변수들이 모두 똑같아졌을 경우의 Year 변수를 출력합니다.
<code>
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int E,S,M;
cin >> E >> S >> M;
int year = 1;
int goingE=1, goingS=1, goingM =1;
while(E != goingE || S != goingS || M != goingM) // 세개가 다 원하는 값이 아닐 때....
{
if(goingE !=15)
{
goingE++;
}
else{
goingE=1;
}
if(goingS != 28)
{
goingS++;
}
else{
goingS=1;
}
if(goingM != 19)
{
goingM++;
}
else{
goingM =1;
}
year++;
}
cout <<year <<'\n';
}
반응형