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
AC × 3
AC × 19
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