코딩 테스트
[코딩테스트] 백준 18108번: 불기 연도 -> 서기 연도
dev.jelee
2025. 5. 5. 21:45
# 문제
- 주소: https://www.acmicpc.net/problem/18108
- 불기 연도를 서기 연도로 변환
# 코드
- Scanner, BufferedReader + InputStreamReader 사용
▼ Scanner 사용
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int BE = sc.nextInt();
int CE = BE - 543;
System.out.println(CE);
sc.close();
}
}
▼ BufferedReader + InputStreamReader 사용
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int BE = Integer.parseInt(br.readLine());
int CE = BE - 543;
System.out.println(CE);
}
}
# 입/출력 결과
▼ Scanner 사용
▼ BufferedReader + InputStreamReader 사용
# 과정
- 첫 번째 문제는 Scanner 내장 클래스 사용.
- 처음에 Scanner import하는데 뒤에 ; 세미콜론을 안 붙였다. 그래서 컴파일러 에러가 떴었음.
- 다시 세미콜론 붙인 다음 검사 결과 통과.
- 두 번째 문제는 BufferedReader + InputStreamReader 사용.
- 입력 받는 소스코드에서 오타 때문에 컴파일 에러가 떴다.
- 오타 수정후 다시 검사를 하니 통과함.
- 불기 연도를 서기 연도로 변경하려면 543년을 빼면 된다. 예제 입력에 2541 입력하면 출력으로 1998이 되어야한다고 하는 걸로 봐서는 그렇게 추측이 되었고, 혹시 몰라서 인터넷에 검색하니 543년 또는 544년 차이가 난다고 했다.
# 느낀 점
- 아직까지 어려운 점은 없었다.