1로 만들기 in C++문제어떠한 정수 X에 아래 3개의 연산을 통해 1을 가장 빠르게(연산의 횟수를 최소화 하여) 만드려고 한다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.X를 1로 만들기 위해 연산이 가장 적게 사용된 횟수를 출력하도록 한다.예시N=1 일 때, 연산의 횟수는 0, N=2 일 때, 연산의 횟수는 2->1 이므로 1. N=3 일 때, 연산의 횟수는 3->1 이므로 1.N=4 일 때, 연산의 횟수는 4->3->1 or 4->2->1 두 가지 경우 모두 2.… N=10 일 때, 10->5->4->2->1의 경우에는 4이지만, 10->9->3->1의 경우에 3이므로 이 때는 3.입력 데이터1보다 크거나 같고 106보다 작은 정수 N입력 예1..
[BAEKJOON ONLINE JUDGE 1463번] 1로 만들기
1로 만들기 in C++문제어떠한 정수 X에 아래 3개의 연산을 통해 1을 가장 빠르게(연산의 횟수를 최소화 하여) 만드려고 한다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.X를 1로 만들기 위해 연산이 가장 적게 사용된 횟수를 출력하도록 한다.예시N=1 일 때, 연산의 횟수는 0, N=2 일 때, 연산의 횟수는 2->1 이므로 1. N=3 일 때, 연산의 횟수는 3->1 이므로 1.N=4 일 때, 연산의 횟수는 4->3->1 or 4->2->1 두 가지 경우 모두 2.… N=10 일 때, 10->5->4->2->1의 경우에는 4이지만, 10->9->3->1의 경우에 3이므로 이 때는 3.입력 데이터1보다 크거나 같고 106보다 작은 정수 N입력 예1..
2024.09.20