Logo
(追記) (追記ここまで)

14883번 - NPM998244353 (Hard)

시간 제한메모리 제한제출정답맞힌 사람정답 비율
5 초 512 MB147342427.586%

문제

길이가 N인 정수 중에서 P로 나누어 떨어지면서, 자릿수의 합이 최대 M인 수의 개수를 998244353로 나눈 나머지를 구하는 프로그램을 작성하시오. 수는 0으로 시작할 수 있다.

입력

첫째 줄에 N, P, MM이 주어진다. (1 ≤ N ≤ 109, 1 ≤ P ≤ 16, 1 ≤ MM ≤ 15,000) MM에 대한 설명은 출력 설명에 적혀 있다.

출력

첫째 줄에 총 MM+1개의 정수를 출력한다. i번째 정수는 M = i인 경우의 정답을 출력한다. 즉, 길이가 N인 정수 중에서 P로 나누어 떨어지면서, 자릿수의 합이 최대 i인 수의 개수를 998244353로 나눈 나머지를 출력한다.

제한

예제 입력 1

2 3 3

예제 출력 1

1 1 1 5

예제 입력 2

2 4 4

예제 출력 2

1 1 2 3 5

힌트

예제 1의 경우에 다음과 같이 정답을 구할 수 있다.

  • M = 0: 00
  • M = 1: 00
  • M = 2: 00
  • M = 3: 00, 03, 21, 30, 12

예제 2의 경우에는 다음과 같이 정답을 구할 수 있다.

  • M = 0: 00
  • M = 1: 00
  • M = 2: 00, 20
  • M = 3: 00, 12, 20
  • M = 4: 00, 04, 12, 20, 40

출처

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /