1.【模板】 求每个数后第一个大于他的数的下标 思路: p[]表示单调栈,递减,存储下标。把栈顶小于当前值的全部弹出。 for(int i=n;i;i--){ while(top&&a[i]>a[p[top]])top--; ans[i]=p[top]; p[++top]=i; } 2.滑动窗口