{"trustable":true,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003e$n$张不重复整数的卡片排成一个圆圈,按顺时针顺序从$1$到$n$编号。\u003cbr\u003e一开始,Kazari拿着一个空数组$A$站在卡片$1$处。\u003cbr\u003e她会一直执行以下两个操作,直到所有卡片都被吃掉。\u003cbr\u003e* 她将当前卡片上的数字添加到$A$中,并以概率$\\frac{p} {q}$吃掉当前卡片。\u003cbr\u003e* 移动到顺时针顺序中尚未被吃掉的下一张卡片。\u003cbr\u003e很明显,最后得到的$A$是一个$n$-排列。如果它在所有$n$-排列中是第$k$个字典序最小的,那么定义它的值为$k$。请帮她计算出$A$的期望值。\u003c/div\u003e"}},{"title":"输入","value":{"format":"HTML","content":"输入的第一行包含一个整数$T$,表示测试用例的数量。\u003cbr\u003e每个测试用例以一个正整数$n$ $(n \\le 300, \\sum{n} \\le 1500)$开始,表示卡片的数量。\u003cbr\u003e第二行包含两个整数$p, q$ $(0 \u0026lt; p \u0026lt; q \\le 10 ^ 9, \\gcd(p, q) \u003d 1)$,表示概率。\u003cbr\u003e第三行包含$n$个整数,第$i$个整数表示第$i$张卡片上的数字$a_i$ $(1 \\le a_i \\le n)$。"}},{"title":"输出","value":{"format":"HTML","content":"对于每个测试用例,打印出模$10 ^ 9 + 7$的期望值$E$。\u003cbr\u003e设$E$为一个不可约分数$\\frac{a} {b}$,定义$E \\equiv a \\hat{b} \\pmod p$,其中$b \\hat{b} \\equiv 1 \\pmod p$,假设$p$是一个质数。"}},{"title":"样例","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e2\r\n2\r\n1 2\r\n1 2\r\n5\r\n3 11\r\n5 2 3 4 1\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e333333337\r\n841859064\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}