姬哥来到了大鸟转转转游乐园,他知道这个游乐园可以用一张 n 个点, m 条边的有向图表示,每条边都有一个互不相同的边权。姬哥还知道,每个顶点的出度不超过 k。
为了更好的感受大鸟转转转游乐园的温暖,姬哥希望设计若干游园方案。每个游园方案可以用一个长度为 k 的正整数序列 (c1,c2,...,ck) 表示,且对于任意 1≤i≤k,都有 1≤ci≤i。
游园方案的具体含义如下:假设姬哥当前位于出度为 i 的点 x 时,他总会走向 x 的所有出边中第 ci 小的那条边。因为所有边的边权互不相同,所以对于任意一个固定的序列 (c1,c2,...,ck),姬哥的行动方案总是唯一的。
为了永远迷失在游乐园的温暖之中,姬哥希望你帮忙计算,有多少个序列 (c1,c2,...,ck) ,使得对于任意点 u(1≤u≤n),姬哥都能根据上述行动规则重新回到 u 点。因为答案可能很大,快来帮帮姬哥!