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

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

저울

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

요약
무게 m인 물체가 있을 때, 왼쪽 접시와 오른쪽 접시에 서로 다른 3의 거듭제곱 무게추를 놓아 저울이 평형을 이루도록 배치한다.
난이도

보통10점 중 4점

유형
수학, 정수론, 그리디, 구현
정답자
아직 제출이 없습니다

문제

양팔저울, 여러 개의 추가 한 세트, 그리고 어떤 물체가 주어진다. 추의 무게는 1, 3, 9, 27, 81, ... 처럼 각각 3의 거듭제곱이고, 각 정수 k≥0k \ge 0에 대해 무게가 3k3^k인 추가 정확히 하나씩 있다. 물체의 무게는 mm이고, mm은 양의 정수이다. 물체를 왼쪽 접시에 올리고, 한쪽 또는 양쪽 접시에 추를 몇 개 올려서 저울이 균형을 이루도록 하려고 한다.

다음 작업을 하는 프로그램을 작성하시오.

  • 입력에서 물체의 무게 mm을 읽는다.
  • 왼쪽 접시와 오른쪽 접시에 각각 어떤 추를 올려야 하는지 계산한다.
  • 결과를 출력에 쓴다.

입력

첫째 줄에 정수 mm이 하나 주어진다. (1≤m≤101001 \le m \le 10^{100})

출력

출력은 두 줄로 이루어진다.

첫째 줄에는 왼쪽 접시에 올린 추에 대한 정보를 쓴다. 첫 번째 수는 왼쪽 접시에 올린 추의 개수인 음이 아닌 정수이고, 그 뒤에 추의 무게가 오름차순으로 이어진다. 수는 하나의 공백으로 구분한다.

둘째 줄에는 오른쪽 접시에 올린 추에 대한 정보를 첫째 줄과 같은 형식으로 쓴다.

예제2

  1. 예제 1

    입력
    42
    
    예상 출력
    3 3 9 27
    1 81
    
  2. 예제 2

    입력
    30
    
    예상 출력
    0
    2 3 27