Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux编程 > » 正文

HDOJ 1009 FatMouse' Trade 解题报告

来源: 未知 分享至:

http://acm.hdu.edu.cn/showproblem.php?pid=1009

简单的贪心法。。。。

Run ID Submit Time Judge Status Pro.ID Exe.Time Exe.Memory Code Len. Language Author
4251483 2011-07-25 14:55:24 Accepted 1009 781MS 352K 1031 B G++ GongZi

//HDOJ 1009 Code By NetBeans 6.9.1
#include <iostream>
#include
<cstdio>
#include
<algorithm>

using namespace std;

struct ROOMTYPE
{
double J, F, average;
};

bool cmp( ROOMTYPE x, ROOMTYPE y );

int main()
{
int M, N;
while( cin >> M >> N && M != -1 && N != -1 )
{
ROOMTYPE room[N];
for( int i = 0; i < N; i++ )
{
cin
>> room[i].J >> room[i].F;
room[i].average
= room[i].J / room[i].F;
}
sort( room, room
+ N, cmp );
double sum = 0;
for( int i = 0; i < N && M > 0; i++ )
{
if( M >= room[i].F )
{
sum
+= room[i].J;
M
-= room[i].F;
}
else
{
sum
+= M / room[i].F * room[i].J;
M
= 0;
}
}
printf(
"%.3f\n", sum );
}
return 0;
}

bool cmp( ROOMTYPE x, ROOMTYPE y )
{
return x.average > y.average;
}
#if gongzi
#endif

Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史