atcoder#CODEFESTIVAL2016FINALF. Road of the King

Road of the King

题目描述

高橋王国には N N 個の町があり、それぞれの町には 1N 1~N の番号が付けられています。

この国の王様である高橋くんは、N N 個の町を M M 日間かけて廻る出張を計画しています。計画では、町の列 c c を決め、i (1iM) i\ (1≦i≦M) 日目には町 ci c_i へ行くことにしました。すなわち、i i 日目には、今いる町から町 ci c_i へ移動します。ただし、今いる町が町 ci c_i であった場合は移動しません。高橋くんははじめ町 1 1 にいるものとします。

困ったことに、この国には道路が 1 1 本もありません。しかたがないので高橋くんは、道路を作りながら歩くことにしました。高橋くんが町 a a から町 b b へ移動すると、町 a a から町 b b への一方通行の道路ができます。

高橋くんは国民思いの王様なので、出張の最終日の目的地に着いた直後に「どの町からどの町へも、高橋くんが作った道路を辿ることによって移動することが出来る」という条件を満たすようにしたいと考えました。このような条件を満たす町の列 c c は何通り考えられるでしょうか?

输入格式

入力は以下の形式で標準入力から与えられる。

N N M M

输出格式

答えを 1000000007 (=109+7) 1000000007\ (=10^9+7) で割った余りを出力せよ。

题目大意

题目描述

有一个 nn 个点的图,目前一条边都没有。

有一个人在 11 号点要进行 mm 次移动,终点不必是 11 号点,假设第 ii 次从 uu 移动到 vv,那么在 uuvv 之间连一条有向边。

问有多少种序列能满足:最终 nn 个点组成的图是一个强连通图。答案对 109+710^9+7 取模。

数据范围

1n,m3001 \leq n,m \leq 300

输入格式

nn m\ m

两个整数 n,mn,m,用一个空格隔开。

输出格式

ansans

一个整数表示答案。

3 3
2
150 300
734286322
300 150
0

提示

制約

  • 2N300 2≦N≦300
  • 1M300 1≦M≦300

Sample Explanation 1

下図のように、c = (2,3,1) c\ =\ (2,3,1) または c = (3,2,1) c\ =\ (3,2,1) のときのみ条件を満たし、c = (2,3,2) c\ =\ (2,3,2) c = (2,1,3) c\ =\ (2,1,3) c = (1,2,2) c\ =\ (1,2,2) などは条件を満たしません。 ![](https://atcoder.jp/img/code-festival-2016-final/199a3fd8d2aed75750901a206c8b7e76.png)