# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
660158 | beepbeepsheep | Pilot (NOI19_pilot) | C++17 | 325 ms | 36684 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define endl '\n'
typedef pair<ll,ll> ii;
const ll inf=1e15;
const ll mod=1e9+7;
const ll maxn=1e6+5;
ll ans[maxn];
ll arr[maxn];
stack<ll> s;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
s.push(0);
ll n,q,ele;
cin>>n>>q;
for (int i=1;i<=n;i++){
cin>>arr[i];
}
arr[0]=inf;
arr[n+1]=inf;
for (int i=1;i<=n+1;i++){
while (arr[s.top()]<arr[i]){
ll a=s.top();
s.pop();
ans[arr[a]]+=(i-s.top()-1)*(i-s.top())/2;
if (i==n+1 && s.top()==0) break;
ans[min(arr[i],arr[s.top()])]-=(i-s.top()-1)*(i-s.top())/2;
}
s.push(i);
}
for (int i=1;i<=maxn;i++){
ans[i]+=ans[i-1];
}
for (int i=0;i<q;i++){
cin>>ele;
cout<<ans[ele]<<endl;
}
return 0;
}
Compilation message (stderr)
# | 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... |
# | 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... |