例题7.2FatMouse'Trade

#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;

struct goods
{
int weight;
int totalprice;
double price;
};
bool cmp(goods a,goods b)
{
return a.price<b.price;
}
int main()
{
int money;
int type;
while(cin>>money>>type)
{
if(money==-1&amp;&amp;type==-1)
{
break;
}
else{
goods gg[type];
for(int i=0;i<type;i++)
{
   
cin>>gg[i].weight>>gg[i].totalprice;
gg[i].price=gg[i].totalprice*1.0/gg[i].weight;//必须加*1.0,否则就是去尾整除无小数

// cout<<gg[i].weight<<&quot; &quot;<<gg[i].totalprice<<&quot; &quot;<<gg[i].price<<endl;//
}
sort(gg,gg+type,cmp);
double answer=0;

for(int i=0;i<type;i++)
{
    
   // cout<<&quot;剩下的钱&quot;<<money<<&quot;已买的重量&quot;<<answer<<endl;
if(money>gg[i].totalprice)
{
money-=gg[i].totalprice;
answer+=gg[i].weight;
}
else{
answer+=money*1.0/gg[i].price;
money=0;
}
}
printf(&quot;%.3f\n&quot;,answer);//输出不用取地址
}

}
}
全部评论

相关推荐

昨天 11:08
门头沟学院 Java
投递京东等公司9个岗位
点赞 评论 收藏
分享
05-12 11:09
已编辑
门头沟学院 后端
已注销:没必要放这么多专业技能的描述。这些应该是默认已会的,写这么多行感觉在凑内容。项目这块感觉再包装包装吧,换个名字,虽然大家的项目基本都是网上套壳的,但是你这也太明显了。放一个业务项目,再放一个技术项目。技术项目,例如中间件的一些扩展和尝试。
简历中的项目经历要怎么写
点赞 评论 收藏
分享
06-18 13:28
已编辑
门头沟学院 Web前端
爱睡觉的冰箱哥:《给予你300的工资》,阴的没边了
点赞 评论 收藏
分享
怎么起名字:早知道就不读书了,害得我送外卖还得扶眼镜
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务