巨大素数で割った余りを求めるときは、減算にも注意
AtCoder
ABC 066 D / ARC 077 B - 11
巨大素数が絡む場合、除算が出てきたらmod_inverseを使うことに注意する。組み合わせも正しく数え上げられたし、これで出来ただろ、と思ったらWrong Answer。
Submission #2896427 - AtCoder Beginner Contest 066
組み合わせを数え上げるときに減算が入っており、そこで負の値になっていることが原因だった。減算してから 109+7 を1回足すことで解決。