Submission #337589

#TimeUsernameProblemLanguageResultExecution timeMemory
337589tengiz05Energetic turtle (IZhO11_turtle)C++17
40 / 100
2101 ms262148 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define FASTIO ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); #define all(x) (x).begin(), (x).end() #define pb push_back #define pii pair<int, int> #define ff first #define ss second #define PI acos(-1) #define ld long double const int N = 2005; int msb(int val){return sizeof(int)*8-__builtin_clzll(val);} int n, m, k; int dp[N][N][21]; int a[N][N]; int mod; void solve(int test_case){ int i, j, t; cin >> n >> m; cin >> k >> t >> mod; n++,m++; for(i=0;i<k;i++){ int x, y; cin >> x >> y; x++,y++; a[x][y] = 1; } dp[1][0][0] = 1; for(i=1;i<=n;i++){ for(j=1;j<=m;j++){ if(a[i][j] == 0) for(int l=0;l<=t;l++){ dp[i][j][l] = (dp[i-1][j][l] + dp[i][j-1][l])%mod; } else for(int l=1;l<=t;l++){ dp[i][j][l] = (dp[i-1][j][l-1]+dp[i][j-1][l-1])%mod; } } } /* for(i=1;i<=n;i++){ for(j=1;j<=m;j++){ cout << dp[i][j][0] << ' ' ; }cout << '\n'; }*/ int ans = 0; for(i=0;i<=t;i++)(ans += dp[n][m][i])%=mod; cout << ans << '\n'; return; } signed main(){ FASTIO; #define MULTITEST 0 #if MULTITEST int ___T; cin >> ___T; for(int T_CASE = 1; T_CASE <= ___T; T_CASE++) solve(T_CASE); #else solve(1); #endif return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...