Submission #3398319
Source Code Expand
#ifndef BZ
#pragma GCC optimize "Ofast"
#endif
#include <bits/stdc++.h>
using namespace std;
using ull = uint64_t;
using ll = int64_t;
using ld = long double;
const int MOD = 1e9 + 7;
ll pw(ll a, ll b) {
if (!b) {
return 1;
}
ll v = pw(a, b / 2);
v = (v * v) % MOD;
if (b & 1) {
v = (v * a) % MOD;
}
return v;
}
const int MAXN = 100228;
ll rev[MAXN];
int main() {
#ifdef BZ
freopen("input.txt", "r", stdin);
#endif
ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); cout.setf(ios::fixed); cout.precision(20);
int n;
cin >> n;
ll ans = 0;
ll cur = 0;
ll fact = 1;
for (int i = 1; i <= n; ++i) {
rev[i] = pw(i, MOD - 2);
cur = (cur + rev[i]) % MOD;
fact *= i;
fact %= MOD;
}
for (int i = 0; i < n; ++i) {
ll x;
cin >> x;
ans = (ans + x * cur) % MOD;
cur = (cur - rev[n - i] + rev[i + 2] + MOD) % MOD;
}
cout << (ans * fact) % MOD << "\n";
}
Submission Info
| Submission Time | |
|---|---|
| Task | B - Removing Blocks |
| User | cospleermusora |
| Language | C++14 (GCC 5.4.1) |
| Score | 600 |
| Code Size | 1083 Byte |
| Status | AC |
| Exec Time | 33 ms |
| Memory | 1024 KiB |
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 KiB |
| sample-02.txt | AC | 1 ms | 256 KiB |
| sample-03.txt | AC | 1 ms | 256 KiB |
| subtask01-01.txt | AC | 1 ms | 256 KiB |
| subtask01-02.txt | AC | 25 ms | 896 KiB |
| subtask01-03.txt | AC | 20 ms | 768 KiB |
| subtask01-04.txt | AC | 25 ms | 896 KiB |
| subtask01-05.txt | AC | 9 ms | 512 KiB |
| subtask01-06.txt | AC | 15 ms | 640 KiB |
| subtask01-07.txt | AC | 9 ms | 512 KiB |
| subtask01-08.txt | AC | 33 ms | 1024 KiB |
| subtask01-09.txt | AC | 33 ms | 1024 KiB |
| subtask01-10.txt | AC | 33 ms | 1024 KiB |
| subtask01-11.txt | AC | 33 ms | 1024 KiB |
| subtask01-12.txt | AC | 33 ms | 1024 KiB |
| subtask01-13.txt | AC | 33 ms | 1024 KiB |