IT/BaekJoon

[백준/C++] 18108번- 1998년생인 내가 태국에서는 2541년생?!

Buang 2022. 7. 12. 15:36
반응형

1. 문제

불교 국가인 태국은 불멸기원(佛滅紀元),

즉 석가모니가 열반한 해를 기준으로 연도를 세는 불기를 사용한다.

 

반면, 우리나라는 서기 연도를 사용하고 있다.

불기 연도가 주어질 때 이를 서기 연도로 바꿔 주는 프로그램을 작성하시오.

 

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

 

18108번: 1998년생인 내가 태국에서는 2541년생?!

ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국

www.acmicpc.net

 

문제 제목 보고 웃은 건 나뿐인 걸까.

너무 재밌게 지었다.

 


2. 풀이

 

서기는 현재 한국에서 쓰는 연도로 예수님이 태어나신 날을 기준으로 한다.

불기는 부처님이 열반하신 날을 기준으로 한다.

 

불기 = 서기 + 544 

 

란 식이 완성된다.

 

 

 

 

예시로 서기 1998년에 544를 더하면

불기 2542년이다.

 

 

그런데 백준 문제에선

서기 = 불기 + 543으로 두고 있다.

이 점만 유의해서 풀면 될 거 같다.

 


3. 코드

 

1) 변수 2개로 만든 코드

 

#include <stdio.h>
 
int main() {

    int BE, AD;
        
    scanf("%d", &BE); 
	AD = BE - 543;
    printf("%d", AD);

    return 0;
}

 

불기 변수 BE랑 서기 변수 AD

즉 2개의 변수를 생성해서 만든 코드다.

변수 한 개만 가지고도 할 수 있다.

 

 

2) 변수 1개

 

#include <stdio.h>
 
int main() {

    int YEAR;
        
    scanf("%d", &YEAR); 
    printf("%d", YEAR - 543);

    return 0;
}

 

반응형