Submission #23365143


Source Code Expand

#include <bits/stdc++.h>
#include <atcoder/all>
#define endl "\n"
using namespace std;
typedef long long ll;
typedef pair<ll, ll> l_l;
typedef pair<int, int> i_i;
template<class T>
inline bool chmax(T &a, T b) {
    if(a < b) {
        a = b;
        return true;
    }
    return false;
}

template<class T>
inline bool chmin(T &a, T b) {
    if(a > b) {
        a = b;
        return true;
    }
    return false;
}

const long long INF = 1e18;
//const ll mod = 1000000007;
using mint = atcoder::modint1000000007;
mint dp[100010][2];
int main() {
    cin.tie(0);
    ios::sync_with_stdio(false);
    mint ans = 0;
    ll N;
    cin >> N;
    dp[1][1] = 1;
    dp[1][0] = 1;
    for(int i = 2; i <= N; i++) {
        dp[i][0] = dp[i-1][1];
        dp[i][1] = dp[i-1][0] + dp[i-1][1];
        //cerr << dp[i][0].val() << " " << dp[i][1].val() << endl;
    }
    dp[0][1] = 1;
    for(int i = 0; i < N; i++) {
        ll A;
        cin >> A;
        if(i == 0) {
            ans += A * (dp[N-1][1] + dp[N-1][0]);
        } else {
            ans += A * (dp[i-1][1] + dp[i-1][0]) * (dp[N-1-i][1] + dp[N-1-i][0]);
            ans -= A * dp[i-1][1] * dp[N-1-i][1];
        }
    }
    cout << ans.val() << endl;
    return 0;
}

Submission Info

Submission Time
Task A - Many Formulae
User kort0n
Language C++ (GCC 9.2.1)
Score 400
Code Size 1223 Byte
Status AC
Exec Time 19 ms
Memory 4464 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 17
Set Name Test Cases
Sample 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt
All 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt, 01-001.txt, 01-002.txt, 01-003.txt, 01-004.txt, 01-005.txt, 01-006.txt, 01-007.txt, 01-008.txt, 01-009.txt, 01-010.txt, 01-011.txt, 01-012.txt, 01-013.txt, 01-014.txt
Case Name Status Exec Time Memory
00-sample-001.txt AC 10 ms 4272 KiB
00-sample-002.txt AC 2 ms 4428 KiB
00-sample-003.txt AC 2 ms 4384 KiB
01-001.txt AC 3 ms 4272 KiB
01-002.txt AC 4 ms 4432 KiB
01-003.txt AC 3 ms 4460 KiB
01-004.txt AC 18 ms 4392 KiB
01-005.txt AC 13 ms 4400 KiB
01-006.txt AC 13 ms 4392 KiB
01-007.txt AC 9 ms 4360 KiB
01-008.txt AC 14 ms 4388 KiB
01-009.txt AC 16 ms 4392 KiB
01-010.txt AC 19 ms 4384 KiB
01-011.txt AC 16 ms 4428 KiB
01-012.txt AC 16 ms 4464 KiB
01-013.txt AC 17 ms 4324 KiB
01-014.txt AC 18 ms 4396 KiB