求debug
查看原帖
求debug
384214
esquigybcu楼主2021/5/15 16:12
#include <stdio.h>
#include <queue>

using std::priority_queue;
priority_queue<int> pq1;
priority_queue<int, std::vector<int>, std::greater<int> > pq2;

const int SIZE = 2e5 + 5;
int a[SIZE];

int main()
{
    int rogerakioi, rogerakimo, stO_roger_Orz = 0;
    scanf("%d %d", &rogerakioi, &rogerakimo);
    for (int i = 0; i < rogerakioi; i++)
        scanf("%d", &a[i]);
    for (int i = 0; i < rogerakimo; i++)
    {
        int t;
        scanf("%d", &t);
        for (int j = stO_roger_Orz; j <= t; j++)
        {
            pq1.push(a[j]);
            if (pq1.size() == i + 1)
                pq2.push(pq1.top()), pq1.pop();
        }
        stO_roger_Orz = t + 1;
        printf("%d\n", pq2.top());
        pq1.push(pq2.top()), pq2.pop();
    }
    return 0;
}

@高远哲

2021/5/15 16:12
加载中...