ID photo of Ciro Santilli taken in 2013 right eyeCiro Santilli OurBigBook logoOurBigBook.com  Sponsor 中国独裁统治 China Dictatorship 新疆改造中心、六四事件、法轮功、郝海东、709大抓捕、2015巴拿马文件 邓家贵、低端人口、西藏骚乱
euler/960.py
from math import comb, factorial

'''
By GPT-5. Runtime: 0m0.249s on pypy3 3.11.13, Ubuntu 25.10, Lenovo ThinkPad P14s.
'''

MOD = 10**9 + 7

def F(n: int) -> int:
    S = 0
    inv2 = (MOD + 1) // 2
    for k in range(1, n // 2 + 1):
        trees_k = 1 if k == 1 else pow(k, k - 2, MOD)
        trees_nk = pow(n - k, n - k - 2, MOD)
        ways = comb(n, k)
        ways %= MOD
        ways = ways * trees_k % MOD
        ways = ways * trees_nk % MOD
        ways = ways * k % MOD
        ways = ways * (n - k) % MOD
        if 2 * k == n:
            ways = ways * inv2 % MOD
        S = (S + k * ways) % MOD
    return S * factorial(n - 1) % MOD

assert F(3) == 12
assert F(4) == 360
print(F(100))