题号:NC200167
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
牛牛刚刚考完了期末,尽管 牛牛 做答了所有

道题目,但他不知道有多少题是正确的。
不过,牛牛 知道第

道题的正确率是

。
牛牛 想知道这 n 题里恰好有

题正确的概率分别是多少,对

取模。
对

取模的含义是:对于一个

的不可约分数

,存在

使得
%20%3Da)
,

即为

对

取模的结果。
输入描述:
第一行,一个正整数
。
第二行,
个整数
,在模
意义下给出。
保证
。
输出描述:
输出一行
个用空格隔开的整数表示答案(对
取模)。
示例1
说明
有 1 道题,做对的概率是

(

在模

意义下为 500000004 )。