# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
154233 | mhy908 | Calvinball championship (CEOI15_teams) | C++14 | 4 ms | 632 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define mod 1000007
using namespace std;
typedef long long LL;
int n;
int arr[10010], maxx;
int newp[10010];
LL dp[10010], dp2[10010];
LL temp=0;
int t2;
LL power(LL a, LL b)
{
if(b==0)return 1;
LL ret=power(a, b/2);
if(b%2)return ret*ret%mod*a%mod;
return ret*ret%mod;
}
int main()
{
scanf("%d", &n);
for(int i=1; i<=n; i++){
scanf("%d", &arr[i]);
maxx=max(maxx, arr[i]);
newp[i]=maxx;
}
dp[n+1]=dp2[n+1]=1;
t2=n+1;
for(int i=n; i>=1; i--){
if(newp[i-1]==newp[i]){
temp+=(LL)(arr[i]-1)*power((LL)newp[i], (LL)t2-(LL)i-1);
temp%=mod;
}
else{
temp+=(LL)(arr[i]-1)*power((LL)newp[i], (LL)t2-(LL)i-1);
temp%=mod;
dp[i]=(temp*dp2[t2]+dp[t2])%mod;
dp2[i]=power((LL)newp[i], min((LL)t2, (LL)n)-(LL)i+1)*dp2[t2]%mod;
t2=i;
temp=0;
}
}
printf("%lld", dp[1]);
}
// 16603
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |