原题链接:蓝桥杯算法提高VIP-快乐司机
解题思路:
贪心+单位价值排序
注意事项:
他装的是散货!
他装的是散货!
他装的是散货!
参考代码:
#include#includeusing namespace std;
struct huo{
double g,p;
double v;
}h[10005];
bool cmp(huo a,huo b){
return a.v>b.v;
}
int main(){
int w,n;
cin>>n>>w;
for(int i=0;i>h[i].g>>h[i].p;
h[i].v=h[i].p/h[i].g;
}
sort(h,h+n,cmp);
double weight=0,value=0;
for(int i=0;i<n;i++){
if(weight+h[i].g<=w){
weight+=h[i].g;
value+=h[i].p;
}else {
value+=h[i].v*(w-weight);
break;
}
}
printf("%.1lf\n",value);
}0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复