만드는 중입니다

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

불행한 번호

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

요약
숫자 0부터 k까지로 만든 n자리 수 중 자릿수를 두 묶음으로 나눠 합을 같게 만들 수 없는 수의 개수를 구합니다.
난이도

보통10점 중 7점

유형
동적 계획법, 조합론, 수학
정답자
아직 제출이 없습니다

문제

보통 6자리 승차권 번호는 앞의 세 자리 숫자의 합과 뒤의 세 자리 숫자의 합이 같으면 행운의 번호로 본다. 행운의 승차권을 받고 싶었던 학생 바샤에게 그런 경우는 드물었다. 그래서 그는 행운의 번호에 대한 기준을 바꿨다.

그가 정한 기준에서는 번호의 숫자 중 일부의 합이 나머지 숫자의 합과 같으면 그 번호가 행운의 번호이다. 예를 들어 승차권 번호 561743은 5+1+4+3=6+75+1+4+3=6+7이므로 행운의 번호이다.

바샤는 자라서도 습관처럼 문서 번호에서 행운의 신호를 찾는다. 그래서 이 기준을 계좌번호 등 여러 문서 번호로 넓혔다. 대상은 0부터 kk까지의 숫자로 이루어진 nn자리 번호이며, 1≤k≤91 \le k \le 9이다. 숫자 중 일부의 합이 나머지 숫자의 합과 같으면 행운의 번호이고, 나머지는 불행한 번호이다. 기준을 넓혔는데도 불행한 번호는 여전히 많다.

0부터 kk까지의 숫자로 만들 수 있는 nn자리 번호 중 불행한 번호의 개수를 구하라. 번호 앞에는 0이 몇 개든 올 수 있다.

입력 파일 unlucky.in은 tests.txt에 있다. 이 입력 파일에 대응하는 출력 파일을 만들어 심사에 제출해야 한다.

입력

입력 파일에는 nn과 kk의 쌍이 여러 개 들어 있으며, 각 쌍은 한 줄에 하나씩 적혀 있다.

출력

입력 파일의 각 nn과 kk 쌍마다 출력 파일의 해당 줄에 불행한 번호의 개수를 출력한다. 구하지 못한 경우에는 0을 출력한다. 입력 파일과 출력 파일의 줄 수는 같아야 한다.

예제1

  1. 예제 1

    입력
    1 1
    
    예상 출력
    1