Submission #66852749


Source Code Expand

#include <iostream>
const long long mod = 1e9 + 7, N = 1e5 + 5;
long long n, a[N], inv[N], sum[N], ans = 0;
int main()
{
 std::cin >> n, inv[1] = 1ll;
 for (long long i = 1; i <= n; i++) std::cin >> a[i];
 for (long long i = 2; i <= n; i++) inv[i] = inv[mod % i] * (mod - mod / i) % mod;
 for (long long i = 1; i <= n; i++) sum[i] = (sum[i - 1] + inv[i]) % mod;
 for (long long i = 1; i <= n; i++) (ans += (sum[i] + sum[n - i + 1] - 1ll) * a[i]) %= mod;
 for (long long i = 1; i <= n; i++) (ans *= i) %= mod;
 return std::cout << ans << '\n', 0;
}

Submission Info

Submission Time
Task B - Removing Blocks
User lhc0707
Language C++ 20 (gcc 12.2)
Score 600
Code Size 559 Byte
Status AC
Exec Time 28 ms
Memory 6008 KiB

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 3428 KiB
sample-02.txt AC 1 ms 3520 KiB
sample-03.txt AC 1 ms 3520 KiB
subtask01-01.txt AC 1 ms 3484 KiB
subtask01-02.txt AC 21 ms 5264 KiB
subtask01-03.txt AC 16 ms 4896 KiB
subtask01-04.txt AC 21 ms 5268 KiB
subtask01-05.txt AC 8 ms 4068 KiB
subtask01-06.txt AC 12 ms 4440 KiB
subtask01-07.txt AC 8 ms 4048 KiB
subtask01-08.txt AC 27 ms 5864 KiB
subtask01-09.txt AC 27 ms 6008 KiB
subtask01-10.txt AC 28 ms 5848 KiB
subtask01-11.txt AC 27 ms 5880 KiB
subtask01-12.txt AC 28 ms 5868 KiB
subtask01-13.txt AC 27 ms 5824 KiB