아름다운 수
시간 제한1초메모리 제한1024 MB
- 난이도
아직 분류되지 않았습니다
- 정답자
- 아직 제출이 없습니다
문제
사샤는 십진 표기에 0과 k(1 ≤ k ≤ 9) 이외의 숫자가 없는 수를 아름다운 수라고 부릅니다. 예를 들어 k = 2이면 2, 20, 22, 2002 등이 아름다운 수입니다. 사샤는 아름답지 않은 수가 싫어서, 그런 수를 아름다운 수의 합으로 나타냅니다. 예를 들어 k = 3일 때 69는 69 = 33 + 30 + 3 + 3으로 나타낼 수 있습니다.
모든 자연수가 아름다운 정수의 합으로 나타나는 것은 아닙니다. 예를 들어 k = 5일 때 6은 그렇게 나타낼 수 없습니다. 하지만 아름다운 소수를 쓰면 6 = 5.5 + 0.5로 나타낼 수 있습니다.
사샤는 최근 순환소수를 배웠고, 이것도 항으로 쓰기 시작했습니다. 예를 들어 k = 3일 때 43은 43 = 33.(3) + 3.(3) + 3 + 3.(3)으로 나타낼 수 있습니다.
모든 자연수는 양의 아름다운 수의 합으로 나타낼 수 있습니다. 다만 그 표현은 하나로 정해지지 않습니다. 예를 들어 69는 69 = 33 + 33 + 3으로도 나타낼 수 있습니다. 사샤는 수 n을 아름다운 수의 합으로 나타낼 때 필요한 항의 최소 개수가 궁금합니다.
n과 k가 주어질 때, n을 양의 아름다운 수의 합으로 나타내면서 항의 개수가 가장 적은 표현을 찾는 프로그램을 작성하세요.
입력
입력 파일에 자연수 n과 k가 주어집니다(; ).
출력
숫자가 0과 k로만 이루어진 양수의 합으로 n을 나타내되, 항의 개수가 최소가 되도록 출력하세요. 출력 형식은 다음과 같습니다.
n=a1+a2+...+am
항 a1, a2, ..., am은 앞에 0을 붙이지 않고, 소수부 끝에 불필요한 0을 붙이지 않은 채로 출력합니다. 각 항은 전치주기와 주기의 길이가 가능한 한 짧아야 합니다. 예를 들어 07.7; 2.20; 55.5(5); 0.(66); 7.(0); 7.; .5; 0.33(03)은 잘못된 표기입니다. 이들은 각각 7.7; 2.2; 55.(5); 0.(6); 7; 7; 0.5; 0.3(30)으로 출력해야 합니다.
출력하는 각 수의 전치주기와 주기는 100자리 이하여야 합니다. 이런 해가 적어도 하나 존재함이 보장됩니다. 해가 여러 개라면 그중 아무거나 출력해도 됩니다. 항의 순서는 상관없습니다.
출력에는 공백이 들어가면 안 됩니다.