CSES - Harjoituskisa 14.1.2018 - Results
Submission details
Task:Alitaulukot
Sender:Katajisto
Submission time:2018-01-14 19:54:23 +0200
Language:C++
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
Test results
testverdicttimegroup
#10.05 s1details
#2--2details

Code

#include<bits/stdc++.h>
using namespace std;
long m = 1e9+7;
int main()
{
    long n; cin >> n;
    long t[n];
    for(int i = 0; i < n; i++)
    {
        long te; cin >> te; t[i] = te;
    }
    long k[n];
    long summa = 0;
    for(int i = 0; i < n; i++) k[i] = 2;
    for(int i = 2; i < n; i++)
    {
        for(int i2 = 1; i2 <= n; i2++)
        {
            if(i2 < i)
            {
                //cout << "1: "<< i2-1 << " + " << i - abs(i - i2) << "\n";
                k[i2-1] += i - abs(i - i2);
                continue;
            }
            if(abs(i2 - n - 1) < i)
            {
                //cout << "2: " << i2-1 << " + " << i - abs(i - abs(i2-n - 1)) << "\n";
                k[i2-1] += i - abs(i - abs(i2-n - 1));
                continue;   
            }
            else
            {
                //cout << "FULL: " <<  i2-1 << " + " << i << "\n";
                k[i2-1] += i;
            }
        }
    }
    for(int i = 0; i < n; i++)
    {
        summa += k[i] * t[i] % m;
    }
    cout << summa % m << "\n";
    
}

Test details

Test 1

Group: 1

Verdict:

input
100
72 66 50 11 3 15 68 45 79 11 9...

correct output
9437440

user output
13683917

Test 2

Group: 2

Verdict:

input
100000
483398076 227177515 705421329 ...

correct output
179178131

user output
(empty)