111 크로나
면접 대비시간 제한1초메모리 제한1024 MB
1, 11, 111, ... 처럼 모든 자릿수가 1인 지폐만 사용해 N 크로나를 정확히 지불할 때 필요한 지폐 수의 최솟값을 구한다.
문제
지폐를 생산하는 Tumba 제지 공장의 인쇄기가 고장 나서 이제 숫자 "1"만 인쇄할 수 있게 되었다. 새 인쇄기를 사려면 크로나가 들지만, 공장에는 돈이 완전히 바닥난 상태다. 지폐를 찍는 곳이 공장 자신이니, 새 기계를 살 돈을 찍어 내면 되지 않겠는가?
고장 난 인쇄기는 숫자 "1"만 찍을 수 있으므로 1 크로나, 11 크로나, 111 크로나, 1111 크로나, ... 의 가치를 가진 지폐만 만들 수 있다.
공장은 새 인쇄기 값을 치르려면 지폐를 몇 장 찍어야 하는지 알고 싶어 한다. 잔돈 없이 정확히 크로나를 지불해야 하며(필요한 것보다 많은 돈을 찍는 것은 부도덕하다), 지폐를 최대한 적게 찍으려 한다. 필요한 지폐 수를 계산하는 프로그램을 작성하시오.
입력
정수 () -- 새 인쇄기의 가격(크로나).
출력
찍어야 하는 지폐 수의 최솟값을 정수로 출력한다.
힌트
- 첫 번째 예시에서는 1 크로나 지폐 1장과 11 크로나 지폐 2장을 쓸 수 있다.
- 두 번째 예시에서는 1, 11, 111, 1111, 11111 크로나 지폐를 한 장씩 쓸 수 있다.