吐血题,官方编译会有问题。
q[h] < i-size+1 会乱数据
要提前 int len = i-size +1. 靠北

class Solution {
public:
    vector<int> maxInWindows(const vector<int>& num, unsigned int size) {
        vector<int> ans;
        if(size==0||size>num.size()) return ans;
        int q[100000];
        int h=0,t=-1;
        for(int i=0;i<num.size();i++){
            int x=num[i];
            int len=i-size+1;
            while(h<=t&&q[h]<len) h++;
            while(h<=t&&num[q[t]]<x) t--;//维护降序
            q[++t]=i;
            if(i>=size-1) ans.push_back(num[q[h]]);
        }
        return ans;
    }
};