# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
142921 | Ruxandra985 | Calvinball championship (CEOI15_teams) | C++14 | 405 ms | 732 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 <cstdio>
#include <iostream>
#define DIMN 10010
#define MOD 1000000007
using namespace std;
int v[DIMN];
long long d[DIMN][2] , s[2][DIMN];
int main()
{
// FILE *fin = fopen ("a.in","r");
// FILE *fout = fopen ("a.out","w");
int n,maxi,i,lin,j;
scanf ("%d",&n);
maxi = 0;
for (i=1;i<=n;i++){
scanf ("%d",&v[i]);
maxi = max ( maxi , v[i] );
}
/// partea 1 : secv doar cu elem intre 1 .. maxi - 1
long long sol = 0;
s[0][0] = 1;
for (i=1;i<=n;i++){
lin = (i&1);
for (j=1;j<maxi;j++){
s[lin][j] = (s[1-lin][j-1] + (s[1-lin][j] * j)%MOD)%MOD;
if (i == n)
sol = (sol + s[lin][j])%MOD;
}
s[0][0] = 0;
}
/// partea 2 : secv care CLAR au si un maxi
d[0][0] = 1;
for (i=1;i<=n;i++){
if (v[i] == maxi){
d[i][0] = (d[i-1][0] * (v[i]-1))%MOD; /// NU PUI MAXI
d[i][1] = (d[i-1][0] + (d[i-1][1] * v[i])%MOD)%MOD;
}
else {
d[i][0] = (d[i-1][0] * v[i])%MOD;
d[i][1] = (d[i-1][1] * v[i])%MOD;
}
}
printf ("%lld" , (d[n][1] + sol )%MOD);
return 0;
}
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... |