반응형
https://www.acmicpc.net/problem/18108
✅ 문제
- ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다.
- 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다.
- 불교 국가인 태국은 불멸기원(佛滅紀元), 즉 석가모니가 열반한 해를 기준으로 연도를 세는 불기를 사용한다.
- 반면, 우리나라는 서기 연도를 사용하고 있다.
- 불기 연도가 주어질 때 이를 서기 연도로 바꿔 주는 프로그램을 작성하시오.
- 시간 제한: 1 초 (추가 시간 없음)
- 메모리 제한: 1024 MB
💡 입력
- 서기 연도를 알아보고 싶은 불기 연도 y가 주어진다. (1000 ≤ y ≤ 3000)
💡 출력
- 불기 연도를 서기 연도로 변환한 결과를 출력한다.
💡 예제 입력 1
2541
💡 예제 출력 1
1998
✅ 문제
💡 해결 계획
- 2541년을 1998년으로 변경해 주기 위해 543년을 뺀 값을 구한다.
- 구한 값을 출력한다.
💡 코드 1 (성공)
시간 복잡도는 O(1)이다.
- 입력값을 하나만 받고 간단한 산술 연산으로 결과를 출력한다
입력값에서 543을 빼고 결과를 출력하는 간단한 코드이다.
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in); // Scanner 객체 생성
int n = sc.nextInt(); // 정수형 변수 n에 입력값 저장
System.out.println(n - 543); // 입력값에서 543을 빼고 출력
}
}
✅ 개념 정리
💡 불기 연도와 서기 연도 간의 변환
불기 연도는 석가모니가 열반한 해를 기준으로 연도를 세는데, 서기 연도에서 543년을 빼면 불기 연도가 된다는 점을 이용하여 변환할 수 있다.
반응형
'프론트엔드 > 알고리즘' 카테고리의 다른 글
자바 JAVA | 백준 10171번 고양이 | 이스케이프 문자 활용 (0) | 2022.09.28 |
---|---|
자바 알고리즘 | IMOS 알고리즘을 활용한 구간 중첩 최대값 찾기 (0) | 2022.09.23 |
자바 JAVA | 백준 11660번 구간 합 구하기 5 | 2차원 배열에서 구간 합 구하기 (0) | 2022.09.20 |
자바 JAVA | 백준 2588번 곱셈 | 연산자를 활용한 세 자리 수 곱셈 계산 프로그램 (2) | 2022.09.20 |
자바 JAVA | 백준 3003번 킹, 퀸, 룩, 비숍, 나이트, 폰 | 배열(Array)의 개념과 사용 방법 (0) | 2022.09.20 |
자바 JAVA | 백준 10926번 ??! | Scanner 클래스를 활용한 사용자 입력 처리 방법 (0) | 2022.09.20 |
자바 알고리즘 | 코딩테스트에서 필수적인 시간 복잡도 개념과 활용 방법 (0) | 2022.09.19 |
자바 JAVA | 백준 11659번 구간 합 구하기 4 | 부분 합을 이용한 구간 합 구하기 알고리즘 (0) | 2022.09.13 |