만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

무작위 자릿수 거듭제곱

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

요약
평문 a와 암호문 b가 주어질 때, a의 각 자릿수를 거듭제곱해 자리값에 맞게 더하면 b가 되는 지수를 왼쪽 자릿수부터 차례로 구합니다.
난이도

보통10점 중 5점

유형
백트래킹, 정수론
정답자
아직 제출이 없습니다

문제

랜덤 자릿수 거듭제곱(RDE) 암호에서는 수 aa의 각 자릿수를, 무작위로 고른 암호화 키가 정한 지수로 거듭제곱한다. 암호화된 수는 각 자릿수를 그 자리의 자릿값에 맞는 거듭제곱으로 바꾼 결과이다.

예를 들어 a=243a = 243이고 암호화 키가 7 4 3이면, 암호화된 값 bb는 b=27×102+44×10+33=15 387b = 2^7 \times 10^2 + 4^4 \times 10 + 3^3 = 15\,387이다.

평문 값 aa와 암호화된 값 bb가 주어졌을 때, 사용된 암호화 키를 구하시오.

입력

입력은 하나의 테스트 케이스로 이루어지며, 두 수 aa와 bb가 주어진다 (0≤a≤b≤2 147 483 6470 \le a \le b \le 2\,147\,483\,647).

출력

암호화 키를 출력한다. 키는 aa의 가장 왼쪽 자릿수부터 각 자릿수에 적용된 지수를 차례로 공백으로 구분해 적은 것이다. 각 지수는 자연수이다. 암호화 키가 존재하고 유일하다는 것이 보장된다.

예제1

  1. 예제 1

    입력
    243 15387
    
    예상 출력
    7 4 3