//
// Created by liasa on 25/01/2026.
//
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define v vector
#define lp(i, s, e) for (ll i = s; i < e; ++i)
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
ll n, d;
cin >> n >> d;
v<ll> c(n);
lp(i, 0, n) cin >> c[i];
v<ll> pre(n, 0), pref(n, 0);
lp(i, 0, n) {
if (c[i] == 1)
pre[i] = (i == 0 ? 0 : pre[i - 1] + 1);
pref[i] = (i == 0 ? 0 : pref[i - 1]) + c[i];
}
ll q;
cin >> q;
while (q--) {
ll l, r;
cin >> l >> r;
l--;
r--;
ll endi = pre[r];
endi = min(r - l + 1, endi);
ll ones = pref[r] - (l == 0 ? 0 : pre[l - 1]);
// cout<<ones<<" ";
ll ans = ones - endi;
// cout<<ans<<" ";
if (d == 1) {
cout << ans << '\n';
} else {
if (ans == 0) {
cout << 0 << '\n';
} else
cout << -1 << '\n';
}
}
}
| # | 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... |