解题思路:
贪心+单位价值排序
注意事项:
他装的是散货!
他装的是散货!
他装的是散货!
参考代码:
#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分
3 人评分
川哥的吩咐 (C语言代码)浏览:926 |
Biggest Number (C++代码)回溯法浏览:1678 |
矩形面积交 (Java代码)浏览:1281 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:511 |
蓝桥杯历届试题-九宫重排 (C++代码)浏览:2812 |
C语言程序设计教程(第三版)课后习题9.1 (Java代码)浏览:481 |
输出正反三角形 (C语言代码)浏览:859 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:686 |
C语言训练-阶乘和数* (C语言代码)-------- 呆板写法浏览:1397 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:468 |