Submission #159956

#TimeUsernameProblemLanguageResultExecution timeMemory
159956mdn2002Mobitel (COCI19_mobitel)C++14
26 / 130
505 ms2916 KiB
#include<bits/stdc++.h> using namespace std; int mod=1e9+7; long long r,c,n,a[353][353],dp[353][353],dp1[353][353]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin>>r>>c>>n; for(int i=0;i<r;i++) { for(int j=0;j<c;j++) { cin>>a[i][j]; } } dp[0][min(a[0][0],n)]=1; for(int i=0;i<r;i++) { for(int j=0;j<c;j++) { if(i==0&&j==0)continue; for(int z=n;z>=0;z--) { long long x=z*a[i][j]; if(dp1[j][z])dp[j][min(x,n)]+=dp1[j][z]; if(dp[j-1][z]&&j!=0)dp[j][min(x,n)]+=dp[j-1][z]; dp[j][min(x,n)]%=mod; } } for(int j=0;j<c;j++) { for(int z=0;z<=n;z++) { dp1[j][z]=dp[j][z]; dp[j][z]=0; } } } cout<<dp1[c-1][n]; }
#Verdict Execution timeMemoryGrader output
Fetching results...