这个到底错哪了,求助

P1168 中位数

LHX05 @ 2023-08-14 11:09:52

#include<bits/stdc++.h>
using namespace std;
deque<int> z;
int main ()
{
    int n,m,x,y;
    cin>>n;
    int a[n];
    for(int i=1;i<=n;i++)
    {
        cin>>a[i],z.push_back(a[i]);
    }
    m=n/2+1;
    y=n/2+1;
    for(int k=1;k<=y;k++)
    {
    for(int j=1;j<=m;j++)
    {
        if(a[j]>a[j+1])
        swap(a[j],a[j+1]);
        x=z.size()/2+1;
        cout<<a[x];
        if(m>n)
        break;
    }m=m+2;
    }
    return 0;
}

by gzy0215 @ 2023-08-14 11:19:18

全错了,从写吧


by dyyzy @ 2023-08-14 15:12:00

@LHX05 你的思路有问题,这道题应该使用对顶堆,vector或者树状数组等数据结构,建议看一下题解


|