문제
어떤 프로그래밍 콘테스트에서는 경기 뒤 친목 모임에서 빙고 게임을 하는 관습이 있다. 다만 이 게임에서 쓰는 빙고 카드는 조금 특별해서, 아래 조건을 따라 만든다.
위 조건을 만족하는 빙고 카드를 되도록 많이 만들고 싶다. 같은 카드는 두 장 이상 만들지 않는다. 만들 수 있는 빙고 카드 장수의 최댓값을 \(100000\)으로 나눈 나머지를 출력하는 프로그램을 작성하라. |
입력
입력은 다음 형식으로 주어진다.
\(N\) \(M\) \(S\)
- 첫째 줄에 빙고 카드의 크기 \(N\), 칸에 적히는 정수의 상한 \(M\), 카드에 적힌 정수의 합 \(S\)가 공백 하나로 구분되어 주어진다.
- \(1 \le N \le 7\)
- \(1 \le M \le 2000\)
- \(1 \le S \le 3000\)
- 주어지는 어느 입력에서도 조건을 만족하는 빙고 카드를 한 장 이상 만들 수 있다.
- 입력되는 값은 모두 정수이다.
출력
다음 형식으로 출력한다.
첫째 줄에, 만들 수 있는 빙고 카드 장수의 최댓값을 \(100000\)으로 나눈 나머지를 출력한다.
예시 1
입력
3 9 45
출력
1
예시 2
입력
3 100 50
출력
7
예시 3
입력
5 50 685
출력
74501