VioletaBabel

1463번: 1로 만들기 본문

백준/백준-C++
1463번: 1로 만들기
Beabletoet 2017. 6. 3. 13:11

#include<cstdio>

#include<algorithm>

int main()

{

int n, o[1000001];

o[1] = 0;

scanf("%d", &n);

for (int i = 2; i <= n; ++i)

{

if (i % 3 == 0)

o[i] = std::min(o[i / 3] + 1, o[i - 1] + 1);

else if (i % 2 == 0)

o[i] = std::min(o[i / 2] + 1, o[i - 1] + 1);

else

o[i] = o[i - 1] + 1;

}

printf("%d", o[n]);

}

'백준 > 백준-C++' 카테고리의 다른 글

1012번: 유기농 배추  (0) 2017.06.03
1629번: 곱셈  (0) 2017.06.03
11052번: 붕어빵 판매하기  (0) 2017.06.01
1780번: 종이의 개수  (0) 2017.06.01
2003번: 수들의 합 [재채점 틀림]  (0) 2017.05.29
Comments