Submission #4035353
Source Code Expand
#include <iostream> #include <cmath> #include <string> #include <algorithm> #include <set> #include <vector> #include <map> #include <list> #include <stack> #include <cstdio> #include <cstring> #include <cstdlib> #include <queue> #define mkp make_pair #define fi first #define se second #define pt(num) cout << num << "\n" #define mCalc(a, s, b) (a)=((a)s(b)+MOD)%MOD #define max(a, b) ((a)>(b) ? (a):(b)) #define min(a, b) ((a)<(b) ? (a):(b)) #define chmax(a, b) (a<b ? a=b : 0) #define chmin(a, b) (a>b ? a=b : 0) #define INF 1000000000000000000 #define MOD 1000000007LL #define MAX 101010 using namespace std; typedef long long ll; typedef pair<ll, ll> P; typedef map<ll, ll> Map; ll mPow(ll x, ll n) { ll res=1; while(n>0) { if(n&1) mCalc(res, *, x); mCalc(x, *, x); n>>=1; } return res; } ll dp[22][2100000]; int main(void) { ll N; cin >> N; ll i; ll s[MAX]; ll fa[MAX]; ll res=0; fa[0]=1; for(i=1; i<=N; i++) { fa[i]=i*fa[i-1]%MOD; s[i]=(s[i-1]+mPow(i, MOD-2))%MOD; //mPow(i, MOD-2):1/iの逆元、s[i]:1/1,1/2,...1/iの和 } for(i=0; i<N; i++) { ll a; cin >> a; mCalc(res, +, (s[i+1]+s[N-i]-1)%MOD*a%MOD); } pt(res*fa[N]%MOD); }
Submission Info
Submission Time | |
---|---|
Task | B - Removing Blocks |
User | eQe |
Language | C++14 (GCC 5.4.1) |
Score | 600 |
Code Size | 1362 Byte |
Status | AC |
Exec Time | 59 ms |
Memory | 1792 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample-01.txt, sample-02.txt, sample-03.txt |
All | sample-01.txt, sample-02.txt, sample-03.txt, sample-01.txt, sample-02.txt, sample-03.txt, subtask01-01.txt, subtask01-02.txt, subtask01-03.txt, subtask01-04.txt, subtask01-05.txt, subtask01-06.txt, subtask01-07.txt, subtask01-08.txt, subtask01-09.txt, subtask01-10.txt, subtask01-11.txt, subtask01-12.txt, subtask01-13.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample-01.txt | AC | 1 ms | 256 KB |
sample-02.txt | AC | 1 ms | 256 KB |
sample-03.txt | AC | 1 ms | 256 KB |
subtask01-01.txt | AC | 1 ms | 256 KB |
subtask01-02.txt | AC | 43 ms | 1408 KB |
subtask01-03.txt | AC | 34 ms | 1152 KB |
subtask01-04.txt | AC | 43 ms | 1408 KB |
subtask01-05.txt | AC | 15 ms | 640 KB |
subtask01-06.txt | AC | 24 ms | 896 KB |
subtask01-07.txt | AC | 15 ms | 640 KB |
subtask01-08.txt | AC | 59 ms | 1792 KB |
subtask01-09.txt | AC | 57 ms | 1792 KB |
subtask01-10.txt | AC | 57 ms | 1792 KB |
subtask01-11.txt | AC | 57 ms | 1792 KB |
subtask01-12.txt | AC | 57 ms | 1792 KB |
subtask01-13.txt | AC | 57 ms | 1792 KB |