문제
18108 - 1998년생인 내가 태국에서는 2541년생?!
풀이
문제의 핵심은 문제에서 말한 불기 연도를 서기 연도로 바꾸는 것이다.
그런데 서기 연도는 우리가 현재 쓰고 있는 연도라는건 알겠는데…. 불기 연도는 대체 뭘까? 불기가 무엇인지 몰랐던 나는 구글링을 통해 불기가 무엇인지 알아보았다.
위키백과를 살펴보면 불기는 석가모니가 입적한 해를 기준으로 삼는 연대 표기법이며, 서기에 600년 혹은 599년을 더하면 불기 연도가 된다고 쓰여 있다. 우리는 불기를 서기로 바꾸는 것이기에 입력 받은 값에 600 혹은 599를 빼주면 된다.
그.러.나. 실제로 예제 입력에 600 혹은 599를 빼주면 예제 출력이 나오지 않는다. (?!)
그래서 위키 백과를 읽어보니 여러 학설마다 불기를 계산하는 법이 다르다는 것을 볼 수 있었다. 예제 입력에서 예제 출력을 빼보면 543이 나오고 우리는 이를 통해 문제에서 의도한 불기는 기원전 543년 설을 말한다는 것을 알 수 있다.
(결론) 따라서 우리는 입력 값에서 543을 빼주면 된다. 사설이 많이 길었다…
소스 코드
#include <iostream>
using namespace std;
int main()
{
int y;
cin >> y;
cout << y - 543;
return 0;
}