大佬们求助 RE/MLE 换用多种算法都不行...

P1478 陶陶摘苹果(升级版)

ruiner @ 2018-10-01 19:16:30

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

int xi[10000],yi[10000];
void qsort(int l,int r);
int main()
{
    bool ok;
    int n,s,a,b,high,count=0;
    cin>>n>>s;
    cin>>a>>b;
    for(int i=1;i<=n;i++)
    cin>>xi[i]>>yi[i];
    high=a+b;
    qsort(1,n);
/*改进后的冒泡排序
    for(int i=1;i<=n;i++)
    {
        ok=true;
        for(int x=1;x<=n-i;x++)
        {
            if(yi[x]>yi[x+1])
            {
                swap(yi[x],yi[x+1]);
                swap(xi[x],xi[x+1]);
                ok=false;
            }
        }
        if(ok==true) break;
    }*/
    int t=1;
    while(s>0)
    {
        if(high>=xi[t]&&s>=yi[t])
        {
            t++;
            count++;    
        }
    }
    cout<<count;
    return 0;
}
快速排序
void qsort(int l,int r)
{
    int i,j,mid,p;
    i=1;j=r;
    mid=yi[(l+r)/2];
    do
    {
        while(yi[j]<mid) j++;
        while(yi[j]>mid) j--;
        if(i<=j)
        {
            swap(yi[i],yi[j]);
            swap(xi[i],xi[j]);
            i++;j--;
        }
    }while(i<=j);
    if(l<j) qsort(l,j);
    if(l<r) qsort(i,r);
}

都GG了 冒泡时间要将近5S 快排时间短,但是会RE/MLE 求dalao解答


by Hallucination @ 2018-10-01 19:21:09

@ruiner sort了解一下


by ruiner @ 2018-10-01 19:22:06

@宇宙最帅的人 sort会RE..


by ruiner @ 2018-10-01 19:22:19

@宇宙最帅的人 我感觉数组开的很大了啊


|