만드는 중입니다

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

MatKor Cup 자리 배치

시간 제한2초메모리 제한1024 MB

요약
참가자 N명과 좌석 M개가 주어질 때, 예측한 좌석이 실제 배정 좌석과 정확히 i명 일치할 확률을 i=0부터 N까지 구합니다.
난이도

보통10점 중 6점

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

문제

이번 MatKor Cup에는 총 NN명의 참가자가 참가하였고, 대회장에는 MM개의 자리가 준비되어 있다. 종우는 NN명의 참가자 각각에게 서로 다른 자리를 미리 한 개씩 배정해 두었다. 동우가 종우에게 자리를 어떻게 배정했는지 물어보았다.

종우는 그냥 알려주지 않고, 동우에게 NN명의 자리를 예측해 보라고 했다. 동우는 MM개의 자리 중 서로 다른 NN개의 자리를 고른 뒤, 각 참가자의 자리를 예측했다.

각각의 ii에 대해, 동우가 예측한 NN명 중 종우가 배정한 자리와 같은 자리에 앉을 것으로 예측된 사람이 정확히 ii명일 확률을 구해 보자.

종우와 동우는 가능한 모든 경우에 대해 동일한 확률로 자리를 배정하거나 예측한다.

입력

첫 번째 줄에 참가 인원과 자리의 개수 NN, MM(1≤N≤M≤5 000 0001\le N\le M\le 5\,000\,000)이 공백으로 구분되어 주어진다.

출력

답을 한 줄에 109+710^9+7로 나눈 나머지로 출력한다. i=0i=0부터 i=Ni=N까지 총 N+1N+1개의 수를 공백으로 구분하여 출력한다. 0부터 N까지 총 N+1개의 수를 모두 공백으로 구분하여 출력해야 함에 유의하자.

기약 분수 pq\frac{p}{q}(p≥0p\ge 0, q>0q>0, gcd⁡(p,q)=1\gcd(p,q)=1)를 MM으로 나눈 나머지는, qq의 MM에 대한 모듈로 곱셈 역원 q−1q^{-1}(단, q⋅q−1≡1(modM)q\cdot q^{-1}\equiv 1 \pmod M)을 이용하여 p⋅q−1(modM)p\cdot q^{-1} \pmod M로 정의한다. 분수가 정수이면 q=q−1=1q=q^{-1}=1이므로 p(modM)p \pmod M을 의미한다.

주어진 조건에서 각 확률은 정수이거나, 분모가 109+710^9+7의 배수가 아닌 유리수로 나타내어짐을 증명할 수 있다.

예제5

  1. 예제 1

    입력
    1 1
    
    예상 출력
    0 1
    
  2. 예제 2

    입력
    1 2
    
    예상 출력
    500000004 500000004
    
  3. 예제 3

    입력
    2 2
    
    예상 출력
    500000004 0 500000004
    
  4. 예제 4

    입력
    2 3
    
    예상 출력
    500000004 333333336 166666668
    
  5. 예제 5

    입력
    2 4
    
    예상 출력
    583333338 333333336 83333334