문제풀이(Problem Solving)

백준, BOJ, 1476번 C++ [CPP] **

게임이 더 좋아 2021. 5. 23. 02:44
반응형
728x170

 

구현하라는 대로 그냥 구현만 해주는 문제다.

메모리가 아주 적다.

 

https://www.acmicpc.net/problem/1476

 

1476번: 날짜 계산

준규가 사는 나라는 우리가 사용하는 연도와 다른 방식을 이용한다. 준규가 사는 나라에서는 수 3개를 이용해서 연도를 나타낸다. 각각의 수는 지구, 태양, 그리고 달을 나타낸다. 지구를 나타

www.acmicpc.net

 


 

문제 범위가 0부터면 쉽겠는데..?

역시 문제를 어렵게 하려면 입력을 드럽게 주면 된다.

 

하지만 우리가 중요한 것은 

연도다. 연도는 해가 한 바퀴 도는 것이 중요하지 연도가 중요하진 않다.

 

다같이 -1을 해주자

 

# 맞는 풀이

#include<iostream>

using namespace std;

int main(){
    int E,S,M;
    int e,s,m;
    
    //사실 1부터 시작하게 만들었지만 %를 이용하기 위해서 1를 빼준다.
    //중요한건 숫자가 아니다.
    
    e = s = m = 0;
    int year = 1;
    
    //동일하게 비교기준도 1을 빼준다.
    cin >> E >> S >> M;
    
    
    while(!(e == (E-1) && s == (S-1) && m == (M-1))){
        e = (e+1)%15;
        s = (s+1)%28;
        m = (m+1)%19;
        year++;

    }
    
    cout << year;
}

 

간단하다.

 

이렇게 짧게 풀이가 가능하다. 논리도 어긋나지도 않았다.

굿

입력이 더러울 땐 입력을 내 입맛에 맞게 바꾸는 것도 중요

 

728x90
반응형
그리드형