Submission #3589668


Source Code Expand

#include<bits/stdc++.h>
#define SZ(x) ((int)(x).size())

typedef long long ll;

int const MOD = 1e9 + 7;

ll KSM(ll a, ll k) {
	ll ret = 1;
	for(; k; k >>= 1) {
		if(k & 1) 
			ret = ret * a % MOD;
		a = a * a % MOD;
	}
	return ret;
}

int main() {
	int n;
	std::cin >> n;
	std::vector<int> a(n);
	std::vector<int> inv(n + 1);
	for(int i = 0; i < n; ++i) 
		std::cin >> a[i];
	for(int i = 1; i <= n; ++i) 
		inv[i] = KSM(i, MOD - 2);
	ll C = 0;
	for(int i = 1; i <= n; ++i)
		C += inv[i];
	ll ans = 0;
	for(int i = 0; i < SZ(a); ++i) {
		ans = (ans + C * a[i]) % MOD;
		C += inv[i + 2];
		C -= inv[n - i];
	}
	for(int i = 1; i <= n; ++i) 
		ans = ans * i % MOD;
	std::cout << ans << '\n';
	return 0;
}

Submission Info

Submission Time
Task B - Removing Blocks
User vjudge5
Language C++14 (GCC 5.4.1)
Score 0
Code Size 702 Byte
Status WA
Exec Time 57 ms
Memory 1024 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 600
Status
AC × 3
AC × 7
WA × 12
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 WA 43 ms 768 KB
subtask01-03.txt WA 34 ms 640 KB
subtask01-04.txt WA 43 ms 768 KB
subtask01-05.txt WA 15 ms 384 KB
subtask01-06.txt WA 24 ms 512 KB
subtask01-07.txt WA 15 ms 384 KB
subtask01-08.txt WA 57 ms 1024 KB
subtask01-09.txt WA 57 ms 1024 KB
subtask01-10.txt WA 57 ms 1024 KB
subtask01-11.txt WA 57 ms 1024 KB
subtask01-12.txt WA 57 ms 1024 KB
subtask01-13.txt WA 57 ms 1024 KB