아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

숫자 카드놀이

면접 대비

시간 제한1초메모리 제한128 MB

요약
여러 개의 시작 수 S에 대해 각 자리 숫자의 곱으로 바꾸는 과정을 한 자리 수가 될 때까지 반복하고, 등장한 모든 수를 순서대로 출력한다.
난이도

쉬움10점 중 2점

유형
시뮬레이션, 구현, 수학, 배열
정답자
아직 제출이 없습니다

문제

맨 앞자리에 앉은 상근이는 수업이 아무리 지루해도 딴짓을 할 수 없다. 하지만 오늘은 도무지 참을 수가 없어, 공책에 '숫자 카드놀이'를 하기로 했다.

숫자 카드놀이는 다음과 같이 진행한다. 먼저 자연수 SS를 하나 고른다. 그런 다음 그 수의 각 자리 숫자를 모두 곱해 새로운 수를 만든다. 이렇게 얻은 수가 한 자리 수가 될 때까지 같은 과정을 반복한다.

예를 들어 9595에서 시작하면 9×5=459 \times 5 = 45가 되고, 4545도 두 자리 수이므로 4×5=204 \times 5 = 20, 다시 2×0=02 \times 0 = 0이 된다. 00은 한 자리 수이므로 놀이가 끝난다.

또 396396에서 시작하면 다음과 같이 진행되어 22에서 끝난다.

3×9×6=1623 \times 9 \times 6 = 162

1×6×2=121 \times 6 \times 2 = 12

1×2=21 \times 2 = 2

자연수 SS가 주어졌을 때, 숫자 카드놀이가 진행되는 과정을 출력하는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 숫자 카드놀이의 시작값 SS 하나로 주어진다 (1≤S≤1000001 \le S \le 100000). SS는 00으로 시작하지 않는다. 입력의 마지막 줄에는 00이 하나 주어지며, 이 줄은 처리하지 않는다.

출력

00이 아닌 각 입력에 대해, 놀이가 끝날 때까지 나타난 모든 수를 공백으로 구분해 한 줄에 출력한다. 첫 번째 수는 입력으로 주어진 값이고, 마지막 수는 한 자리 수이다.

예제1

  1. 예제 1

    입력
    95
    396
    28
    4
    40
    0
    
    예상 출력
    95 45 20 0
    396 162 12 2
    28 16 6
    4
    40 0