Submission #1515309


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using pii = pair<int, int>;

constexpr ll M = 1e9 + 7;

ll modpow(ll x, ll n) {
    ll res = 1;
    while(n > 0) {
        if(n & 1) {
            res = (res * x) % M;
        }
        x = (x * x) % M;
        n >>= 1;
    }
    return res;
}

int main() {
    int N;
    cin >> N;
    vector<pii> v;
    int l = -1, r = -1;
    int cnt = 0;
    for(int i = 0; i < N; ++i) {
        int a;
        cin >> a;
        if(a != -1) {
            l = r;
            r = a;
            if(l != -1) {
                v.emplace_back(r - l + 1, cnt);
                cnt = 0;
            }
        } else {
            cnt++;
        }
    }
    ll res = 1;
    for(auto& p : v) {
        ll P = 1;
        for(int i = p.first + p.second - 1; i >= p.first; --i) {
            P = (P * i) % M;
        }
        ll Q = 1;
        for(int i = 1; i <= p.second; ++i) {
            Q *= i;
        }
        Q = modpow(Q, M - 2);
        P = (P * Q) % M;
        res = (res * P) % M;
    }
    cout << res << endl;
}

Submission Info

Submission Time
Task C - タコヤ木
User Suibaka
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1130 Byte
Status WA
Exec Time 2 ms
Memory 256 KB

Judge Result

Set Name Sample Subtask1 Subtask2 Subtask3
Score / Max Score 0 / 0 0 / 50 0 / 30 0 / 20
Status
AC × 3
AC × 10
WA × 4
AC × 18
WA × 8
AC × 29
WA × 10
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
Subtask1 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt
Subtask2 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt
Subtask3 sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt, subtask3_04.txt, subtask3_05.txt, subtask3_06.txt, subtask3_07.txt, subtask3_08.txt, subtask3_09.txt, subtask3_10.txt, subtask3_11.txt, subtask3_12.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
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt WA 1 ms 256 KB
subtask1_05.txt AC 1 ms 256 KB
subtask1_06.txt AC 1 ms 256 KB
subtask1_07.txt WA 1 ms 256 KB
subtask1_08.txt AC 1 ms 256 KB
subtask1_09.txt WA 1 ms 256 KB
subtask1_10.txt AC 1 ms 256 KB
subtask1_11.txt AC 1 ms 256 KB
subtask1_12.txt WA 1 ms 256 KB
subtask2_01.txt AC 1 ms 256 KB
subtask2_02.txt AC 1 ms 256 KB
subtask2_03.txt AC 1 ms 256 KB
subtask2_04.txt AC 1 ms 256 KB
subtask2_05.txt AC 2 ms 256 KB
subtask2_06.txt WA 1 ms 256 KB
subtask2_07.txt WA 2 ms 256 KB
subtask2_08.txt AC 2 ms 256 KB
subtask2_09.txt WA 2 ms 256 KB
subtask2_10.txt WA 2 ms 256 KB
subtask2_11.txt AC 2 ms 256 KB
subtask2_12.txt AC 2 ms 256 KB
subtask3_01.txt AC 1 ms 256 KB
subtask3_02.txt AC 1 ms 256 KB
subtask3_03.txt AC 1 ms 256 KB
subtask3_04.txt AC 2 ms 256 KB
subtask3_05.txt AC 1 ms 256 KB
subtask3_06.txt AC 2 ms 256 KB
subtask3_07.txt AC 2 ms 256 KB
subtask3_08.txt AC 2 ms 256 KB
subtask3_09.txt WA 2 ms 256 KB
subtask3_10.txt AC 2 ms 256 KB
subtask3_11.txt WA 2 ms 256 KB
subtask3_12.txt AC 2 ms 256 KB