結果
問題 | No.727 仲介人moko |
ユーザー |
![]() |
提出日時 | 2018-08-24 22:51:00 |
言語 | C++11 (gcc 13.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 694 bytes |
コンパイル時間 | 468 ms |
コンパイル使用メモリ | 55,872 KB |
実行使用メモリ | 12,388 KB |
最終ジャッジ日時 | 2024-06-23 08:35:56 |
合計ジャッジ時間 | 2,996 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 TLE * 1 |
other | -- * 25 |
ソースコード
#include <iostream> using namespace std; long long dp[2][1000007]; int main() { long long N; cin >> N; const long long MOD = 1000000007; for (long long i = 0; i <= N; i++) { if (i == 0) { dp[0][0] = 1; continue; } for (long long j = 0; j <= i; j++) { // i > 0 if (j == 0) { dp[i%2][j] = dp[(i+1)%2][j]; } else { dp[i%2][j] = (dp[(i+1)%2][j] + dp[i%2][j-1] * (i - (j-1))) % MOD; } } } long long Na = 1; for (int i = 1; i <= N; i++) Na = (Na * i) % MOD; cout << (((dp[N%2][N] * Na) % MOD) * Na) % MOD << endl; return 0; }