알고리즘/백준 JAVA
[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 18108: 1998년생인 내가 태국에서는 2541년생?!
이오와이
2023. 9. 1. 09:56
서기가 있기 전, 불기가 있습니다.
예수의 탄생 시점으로부터 지금까지가 2023년이고, 이를 서기라고 합니다.
석가모니 탄생시점으로부터 지금까지가 2567년입니다. 이를 불기라고 합니다.
불기 원년(1년)은 기원전 544년이므로 서기를 불기로 변환할 때는 544를 더하면 됩니다.
쉽게 말해 서기 2000년은 불기 2544년입니다.(불멸기원)(서력기원)
나무위키에서는 544년 차이가 난다고 하지만, 위키백과와 다른 문서들 조회 결과 불기와 서기의 차이가 조금씩 다릅니다.
백준에서는 543년 차이를 인식하고 있습니다.
문제 그대로를 받아 들이기 위해 543년으로 계산하도록 하겠습니다.
서기 0년은 불기 543년이므로
서기 + 543 = 불기 입니다.
즉, 서기 2023년은 불기 2567년 인거죠.
18108: 1998년생인 내가 태국에서는 2541년생?!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//서기 + 543 = 불기
int y = sc.nextInt();
sc.close();
System.out.println(y - 543);
}
}
문제에서는 입력값으로 불기를 받습니다.
불기에서 543년을 빼요.
그렇게 출력값은 서기가 됩니다.