公司网站谁负责做,有几个网站打不开,百度技术培训中心,泗县建设局网站题目描述 V8为了讨女朋友开心#xff0c;给lx承包大活后面那个水塘。为了筹集资金#xff0c;V8偷偷地溜进了一座古墓#xff0c;发现在他面前有金光闪闪的若干小箱子#xff0c;里面全都是金粉#xff0c;作为横行于各种##xffe5;场所的V8来说#xff0c;辨别不… 题目描述 V8为了讨女朋友开心给lx承包大活后面那个水塘。为了筹集资金V8偷偷地溜进了一座古墓发现在他面前有金光闪闪的若干小箱子里面全都是金粉作为横行于各种#场所的V8来说辨别不同成色的金粉早已不在话下很快他就给这些金粉的价值做出了评估可惜V8力气太小只能带走V体积的金粉现在告诉你这些小箱子的体积和每个箱子里面金粉的价值问V8最多能带走多少价值的金粉 输入 多组数据 第一行一个T表示数据组数 之后对于每组数据 第一行一个整数n(1n10^3)表示箱子的数量 之后n行每行两个整数vw(0v10^3,0w10^3)分别表示箱子的体积和里面金粉的价值。 最后一行一个整数V(0V10^3)表示V8能带走的最大体积。 输出 每组数据一行每行一个浮点数表示最大价值保留小数点后四位。 答案的绝对误差不超过10^-4即判为正确。 --正文 第一次做special judge不过题很简单 #include iostream
#include cstdio
#include cstring
#include cmath
#include algorithm
using namespace std;struct Box {double Value,Weight,ActualValue;
};
struct Box box[1001];
int n;
bool cmp(struct Box b1,struct Box b2){if (fabs(b1.ActualValue-b2.ActualValue) 1e-6)return (b1.Weight b2.Weight);return (b1.ActualValue b2.ActualValue);
} int main(){int time,T; scanf(%d,T);for (time1;timeT;time){scanf(%d,n);int i;for (i1;in;i){double v,w;scanf(%lf %lf,v,w);box[i].Value w; box[i].Weight v;box[i].ActualValue w / v;}sort(box1,box1n,cmp);double res 0;double V;scanf(%lf,V);for (i1;in;i){if (V box[i].Weight) {V V - box[i].Weight;res box[i].Value;}else {res V*box[i].ActualValue;break;}}printf(%.4lf\n,res);}return 0;
} 转载于:https://www.cnblogs.com/ToTOrz/p/6169632.html