Submission #995549

#TimeUsernameProblemLanguageResultExecution timeMemory
995549mariamp1Tents (JOI18_tents)C++14
100 / 100
50 ms70788 KiB
#include<bits/stdc++.h> using namespace std; #define int long long const int N = 3005; int dp[3005][3005]; const int mod = 1e9 + 7; int32_t main(){ int h, w; cin >> h >> w; int ans = 0; for(int i = 1; i <= h; i++){ for(int j = 1; j <= w; j++){ ans=0; ans += dp[i-1][j]; if(j > 1){ ans += (j * (j-1))/2 * (dp[i-1][j-2]+1); } ans += (dp[i-1][j-1]+1) * j * 4; if(i > 1){ ans += (dp[i-2][j - 1] + 1) * (i-1) * (j); } ans %= mod; dp[i][j]=ans; } } cout << ans << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...