1, 2, 3 더하기 2

1, 2, 3의 합으로 n을 나타내는 식을 사전식 순서로 늘어놓았을 때 k번째 식을 구하고 없으면 -1을 출력합니다.

쉬움3백트래킹동적 계획법면접 대비아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

정수 4를 1, 2, 3의 합으로 나타내는 방법은 모두 7가지다. 합에는 수를 1개 이상 써야 한다.

  • 1+1+1+1
  • 1+1+2
  • 1+2+1
  • 2+1+1
  • 2+2
  • 1+3
  • 3+1

이 식을 사전순으로 정렬하면 순서가 다음과 같다.

  1. 1+1+1+1
  2. 1+1+2
  3. 1+2+1
  4. 1+3
  5. 2+1+1
  6. 2+2
  7. 3+1

정수 nnkk가 주어질 때, nn을 1, 2, 3의 합으로 나타내는 식 중에서 사전순으로 kk번째인 식을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 nnkk가 공백으로 구분되어 주어진다. nn은 11보다 작은 양의 정수이고, kk23112^{31}-1 이하의 자연수다.

출력

nn을 1, 2, 3의 합으로 나타내는 식 중에서 사전순으로 kk번째인 식을 출력한다. 더하기 기호 양옆에는 공백을 넣지 않는다. kk번째 식이 없으면 -1을 출력한다.