Submission #1107871

#TimeUsernameProblemLanguageResultExecution timeMemory
110787112345678Calvinball championship (CEOI15_teams)C++17
100 / 100
158 ms656 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long const int nx=1e4+5, mod=1e6+7; ll n, a[nx], h[nx], res, dp[2][nx]; int main() { cin.tie(NULL)->sync_with_stdio(false); cin>>n; for (int i=1; i<=n; i++) cin>>a[i], h[i]=max(h[i-1], a[i]); for (int i=1; i<=n; i++) dp[0][i]=1; a[0]=1; for (int i=1; i<=n; i++) { int c=i%2, p=1-c; res=(res+(dp[p][h[n-i]])*(a[n-i+1]-1))%mod; for (int j=1; j<=n; j++) dp[c][j]=(dp[p][j]*j+dp[p][j+1])%mod; //cout<<"debug "<<i<<' '<<j<<' '<<dp[c][j]<<'\n'; } cout<<(res+1)%mod; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...