结构体编译不过是为什么

P1478 陶陶摘苹果(升级版)

王宏宇11 @ 2019-02-23 18:23:40

一枚真实的萌新,不会用结构体,代码结构体编译不过,不知道为什么,望大佬们看看

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
using namespace std;
struct  node
{int xi;
 int yi;//力气 
};
node a[5005];
int main()
{int n,s,h,b;
int sum=0;
cin>>n>>s;
cin>>h>>b;
for(int i=1;i<=n;i++)
   cin>>a[i].xi>>a[i].yi;
sort(a+1,a+1+n);//排序 
while(s>=0)
   {int i=1;
    if(h+b>=a[i].xi)
      {sum++;
       s=s-a[i].yi;//如果可以就减去力气 
      } 
    i++;
    if(i>n)//力气多了退出 
     break;
    }
cout<<sum;
return 0;
} 

by 王宏宇11 @ 2019-02-23 19:18:28

@_Wolverine 和之前那位无名大佬说的一样吗,我对cmp函数只是略有耳闻,其实几乎不懂QwQ、


by Priori_Incantatem @ 2019-02-23 19:19:08

哦我以为是普通版的


by Priori_Incantatem @ 2019-02-23 19:19:21

等下


by 王宏宇11 @ 2019-02-23 19:20:19

@_Wolverine 输入应该没问题吧QwQ


by Priori_Incantatem @ 2019-02-23 19:21:44

输入没问题


by 王宏宇11 @ 2019-02-23 19:23:13

@   这样我还是会出现编译错误named return values are no longer supported这个东西


by Priori_Incantatem @ 2019-02-23 19:24:05

@王宏宇11
你在

node a[5005]

int main()

之间加上

bool cmp(node x,node y){
    return x.yi<y.yi;
}

by Priori_Incantatem @ 2019-02-23 19:25:01

然后把sort那一句改成

sort(a+1,a+n+1,cmp);

by 王宏宇11 @ 2019-02-23 19:25:17

@   之前我看错了


by 王宏宇11 @ 2019-02-23 19:25:38

@_Wolverine 这个cmp函数是怎么运行的呢


上一页 | 下一页