Submission #1129896

#TimeUsernameProblemLanguageResultExecution timeMemory
1129896aykhnTents (JOI18_tents)C++20
100 / 100
90 ms70904 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int mod = 1e9 + 7; signed main() { int n, m; cin >> n >> m; int dp[n + 1][m + 1]; for (int i = 0; i <= n; i++) for (int j = 0; j <= m; j++) dp[i][j] = !i || !j; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { dp[i][j] += dp[i - 1][j]; dp[i][j] += dp[i - 1][j - 1] * j * 4; if (j > 1) dp[i][j] += dp[i - 1][j - 2] * j * (j - 1) / 2; if (i > 1) dp[i][j] += dp[i - 2][j - 1] * j * (i - 1); dp[i][j] %= mod; } } cout << (dp[n][m] + mod - 1) % mod << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...