Submission
Status:
[PPP][PPPP][PPP][PPPPPPP]
Score: 100
User: mydKN
Problemset: ขั้นบันได
Language: cpp
Time: 1.209 second
Submitted On: 2024-12-03 23:32:50
#include<bits/stdc++.h>
using namespace std;
const int maxn = 5e4 + 5;
const int maxr = 1e5 + 5;
int n, q;
int arr[maxn];
int odd[maxr];
int even[maxr];
int main(){
ios_base::sync_with_stdio(0);cin.tie(0);
cin >> n;
cin >> arr[0];
for(int i=1;i<n;++i){
cin >> arr[i];
for(int j=min(arr[i-1], arr[i])+1;j<max(arr[i-1], arr[i]);++j){
if(j%2==0) ++even[j];
else ++odd[j];
}
}
for(int i=1;i<maxr;++i){
even[i] += even[i-1];
odd[i] += odd[i-1];
}
cin >> q;
for(int i=0;i<q;++i){
int s, e;
cin >> s >> e;
cout << even[e] - even[s-1] << " " << odd[e] - odd[s-1] << "\n";
}
}