AT_agc023_c [AGC023C] Painting Machines
Description
[problemUrl]: https://atcoder.jp/contests/agc023/tasks/agc023_c
$ N $ 個のマスが横一列に並んでおり、左から右へ $ 1 $ から $ N $ までの番号がついています。 最初、すべてのマス目は白いです。 また、$ N-1 $ 台のペイントマシンがあり、$ 1 $ から $ N-1 $ までの番号が付けられています。 ペイントマシン $ i $ は、稼働すると、マス $ i $ とマス $ i+1 $ を黒く塗ります。
すぬけ君は、これらのペイントマシンを、$ 1 $ 台ずつ順番に稼働させます。 すぬけくんがマシンを稼働させる順番は、$ (1,\ 2,\ ...,\ N-1) $ の順列 $ P $ によって表されます。 これは、$ i $ 番目に稼働させるマシンの番号が $ P_i $ であることを意味します。
ここで、ある順列 $ P $ のスコアは、その順列に従ってマシンを稼働させたとき、 すべてのマスが黒く塗られた状態に初めてなるまでに稼働させたマシンの台数と定義されます。 すぬけ君はまだ順列 $ P $ を決めていませんが、スコアに興味があります。 すぬけ君のために、すべての順列についてそのスコアを求め、その総和を求めてください。 ただし、答えは非常に大きくなることがあるので、$ 10^9\ +7 $ で割った余りを求めてください。
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- $ 2\ \leq\ N\ \leq\ 10^6 $
### Sample Explanation 1
順列 $ P $ としてありうるものは $ 6 $ つあります。 この中で、$ P\ =\ (1,\ 3,\ 2) $ または $ P\ =\ (3,\ 1,\ 2) $ のときだけスコアは $ 2 $ になり、 それ以外のときはスコアは $ 3 $ になります。 よって、求める答えは $ 2\ \times\ 2\ +\ 3\ \times\ 4\ =\ 16 $ となります。
### Sample Explanation 2
ありうる唯一つの順列は $ P\ =\ (1) $ で、スコアは $ 1 $ です。