#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
signed main(){
int N, D; cin >> N >> D;
int C[N + 1] = {};
bool S2 = 1;
for (int i = 1; i <= N; i++) {
cin >> C[i];
if (C[i] > 1) S2 = 0;
}
int Q; cin >> Q;
int L[Q + 1], R[Q + 1];
for (int i = 1; i <= Q; i++) cin >> L[i] >> R[i];
if (S2){
int A[N + 1] = {}, P[N + 1] = {};
for (int i = 1; i <= N; i++){
if (C[i] == 1) A[i] = A[i - 1] + 1;
P[i] = P[i - 1] + C[i];
}
for (int i = 1; i <= Q; i++){
int l = L[i], r = R[i];
if (P[r] - P[l - 1] <= A[r]){
cout << 0 << endl;
}
else if (D == 1){
cout << P[r] - P[l - 1] - A[r] << endl;
}
else cout << -1 << endl;
}
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |