单调队列 数组写法qwq
1 #include<bits/stdc++.h> 2 #define ll unsigned long long 3 #define LL long long 4 const int MOD=1e9+7; 5 const int maxn=2e5+5; 6 using namespace std; 7 8 int que[maxn],a[maxn]; 9 void que_min(int n) 10 { 11 int l=0,r=0;//头尾相等 12 for(int i=1;i<=n;i++) 13 { 14 if(r>=l&&que[r]>=a[i])//队尾减一左移 15 r--; 16 que[++r]=a[i]; 17 } 18 } 19 void que_max(int n) 20 { 21 int l=0,r=0; 22 for(int i=1;i<=n;i++) 23 { 24 if(r>=l&&que[r]<=a[i]) 25 r--; 26 que[++r]=a[i]; 27 } 28 } 29 int main() 30 { 31 return 0; 32 }
纵使单枪匹马,也要勇闯天涯