Untitled
unknown
c_cpp
3 years ago
1.1 kB
8
Indexable
#include<stdio.h> long long int n,x; long long int ary[500000]; long long int ans=0; long long int stack[500000]; long long int point=0; int main(){ scanf("%lld%lld",&n,&x); for(int i=0;i<n;i++){ scanf("%lld",&ary[i]); while(point>0 && ary[i]>=stack[point-1]){ ans+=n-i; point--; } stack[point++]=x-ary[i]; } printf("%lld\n",ans); }
Editor is loading...