알고리즘 풀이/백준
1463번 - 1로 만들기
claire
2022. 3. 12. 14:55
#include<iostream>
#include<algorithm>
using namespace std;
int d[1000001];
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int x;
cin >> x;
d[1] = 0;
for (int i = 2; i <= x; i++) {
d[i] = d[i - 1] + 1;
if (i % 2 == 0)d[i]=min(d[i], d[i / 2] + 1);
if (i % 3 == 0)d[i] = min(d[i], d[i / 3] + 1);
}
cout << d[x];
}