我的代码:
#include<bits/stdc++.h>
using namespace std;
double n,t,v;
struct node{
double price;
double m;
};
node a[110];
bool cmp(node x,node y){
return x.price>y.price;
}
int main(){
cin>>n>>t;
for(int i=1;i<=n;i++){
cin>>a[i].m>>v;
a[i].price=v/a[i].m;
}
sort(a+1,a+n+1,cmp);
v=0;
for(int i=1;i<=n;i++){
if(t<a[i].m){
v+=t*a[i].price;
break;
}
t-=a[i].m;
v+=a[i].m*a[i].price;
}
cout<<v;
return 0;
}
报错信息:
18 13 C:\Users\lenovo\Desktop\未命名1.cpp [Error] invalid operands of types 'node [110]' and 'double' to binary 'operator+'