ac求助,(不知道怎么肥四就ac了),希望有大佬解释一下
查看原帖
ac求助,(不知道怎么肥四就ac了),希望有大佬解释一下
108403
w_y_y_楼主2018/8/30 22:13

蒟蒻求助,为什么要执行平方次才能ac?这道题ac懵了

#include<stdio.h>
struct xxxx
{
    int a,b;
}r[10000];
int main (void)
{
    int n,m,i,ptr,j,tmp,total=0;
    scanf("%d%d",&n,&m);
    for(i=0;i<n;i++)
    {
        scanf("%d%d",&r[i].a,&r[i].b);
    }
    //ptr=m*1.5;//int 类自动省略小数点后面的数
    for(i=0;i<n;i++)
        for(j=i+1;j<n;j++)
            if(r[i].b<r[j].b)
            {
                tmp=r[i].b;
                r[i].b=r[j].b;
                r[j].b=tmp;
                tmp=r[i].a;
                r[i].a=r[j].a;
                r[j].a=tmp;
            }
    //for(j=0;j<n;j++)不要这一句过不了
    for(i=0;i<n;i++)
    {
        if(r[i].b==r[i-1].b)
            if(r[i].a<r[i-1].a)
            {
                tmp=r[i].a;
                r[i].a=r[i-1].a;
                r[i-1].a=tmp;//成绩一样只换编号就行了
            }
    }
    ptr=m*1.5;
    ptr=r[ptr-1].b;
    printf("%d ",ptr);
    for(i=0;i<n;i++)
        if(r[i].b>=ptr)
            total++;
    printf("%d\n",total);
    for(i=0;i<n;i++)
        if(r[i].b>=ptr)
            printf("%d %d\n",r[i].a,r[i].b);
    return 0;
}

2018/8/30 22:13
加载中...