# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
3431 | arine | Inherited disease (kriii1_I) | C++98 | 0 ms | 1672 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 <iostream>
#include <vector>
#define DIVIDENT 1000000007
using namespace std;
typedef long long int lld;
lld starting[110];
int main() {
starting[0]=0, starting[1]=1, starting[2]=2;
lld org=2;
for(int i=3; i<=100; ++i) {
starting[i]=(starting[i-1]+org)%DIVIDENT;
org=(org*i)%DIVIDENT;
}
// for(int i=0; i<=100; ++i) cerr << starting[i] << ' ';
int D;
cin >> D;
lld past=0;
for(int i=1; i<=D; ++i) {
lld Di;
cin >> Di;
cout << (starting[i]+(Di-1)+past)%DIVIDENT << endl;
past=(past+Di-1)%DIVIDENT;
past=(past*(i+1))%DIVIDENT;
// cerr << '[' << past << ']' << endl;
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |