/********************************
* 日期:2011-2-7
* 作者:SJF
* 题号:杭电1009
* 题目:FatMouse' Trade
* 结果:AC
********************************/
#include <stdio.h>
#include <stdlib.h>
/*int cmp(const void* a,const void* b)
{
return *(int*)a-*(int*)b;
}*/
int main()
{
int M,N;
while(scanf("%d%d",&M,&N)!=EOF)
{
int i,j,J[1000],F[1000],temp1;
double ratio[1000],JavaBeans=0,temp;
if((M==-1)&&(N==-1))
{
return 0;
}
for(i=0;i<N;i++)
{
scanf("%d%d",&J[i],&F[i]);
ratio[i]=(J[i]*1.0)/F[i];
}
for(i=0;i<N;i++)
{
for(j=0;j<N-i-1;j++)
{
if(ratio[j]<ratio[j+1])
{
temp=ratio[j];
ratio[j]=ratio[j+1];
ratio[j+1]=temp;
temp1=F[j];
F[j]=F[j+1];
F[j+1]=temp1;
temp1=J[j];
J[j]=J[j+1];
J[j+1]=temp1;
}
}
}
for(i=0;i<N;i++)
{
if(M>=F[i])
{
JavaBeans=J[i]+JavaBeans;
M=M-F[i];
}
else
{
JavaBeans=JavaBeans+ratio[i]*M;
break;
}
}
printf("%.3lf\n",JavaBeans);
}
return 0;
}
分享到:
相关推荐
【ACM竞赛之FatMouse' Trade 贪心法】主要涉及的是优化策略问题,具体是将一个实际问题转化为经典的背包问题,通过贪心算法来寻找最优解。在这个问题中,我们有一只老鼠,它拥有M磅的猫食,需要在N个房间中通过交换...
【PJBlog2 FatMouse模板】是一款专为PJBlog2博客系统设计的个性化主题,它旨在提升用户网站的视觉效果和用户体验。PJBlog2是一个开源的博客系统,深受个人和小型团队喜爱,因其易于使用和高度可定制性而受到广泛欢迎...
在 FatMouse's Speed 问题中,动态规划同样大放异彩。通过对老鼠的重量和速度进行排序,我们可以利用动态规划的策略来优化速度的计算和比较过程,快速得到问题的解。 动态规划之所以在算法竞赛中被广泛运用,源于它...
《fatmouse的C++》是针对C++编程语言的一个初级教程,主要面向初学者,旨在帮助他们快速入门C++编程。C++是一种通用的、面向对象的编程语言,由Bjarne Stroustrup在C语言的基础上发展而来,具有高效、灵活和强大的...
- 1009: FatMouse' Trade:这题难度稍增,但思路清晰,通过排序和优化策略即可解答。 【题目分类】 课件将题目分为两类: 1. 傻瓜型:如1004和1008,这类题目对参赛者的技术要求较低,主要测试基础编程能力。 2. ...
标题 "PJBlog2 两个人的世界" 指的是一款基于PJBlog平台的个性化主题模板,主要面向情侣或个人分享日常生活、情感故事等。这个描述暗示了该模板设计温馨、浪漫,可能包含了一些特色功能,如双人日记、互动模块或者...
1107 FatMouse and Cheese 简单题,不过题目描述有些混乱 1136 Multiple 简单题,BFS 1276 Optimal Array Multiplication Sequence 简单题 1255 The Path 简单题 1250 Always On the Run 简单题 1213 ...
例如,“Sum Problem”可能需要计算连续整数的和,“Number Sequence”可能涉及特定的数字序列操作,“Elevator”可能与电梯调度算法有关,而“FatMouse' Trade”可能是一个涉及动态规划或搜索策略的问题。...
在描述中提到的“FatMouse's Trade”问题是一个典型的贪心算法应用实例。问题设定是FatMouse有M磅的猫粮,想要换取JavaBean,仓库中的每个房间含有不同数量的JavaBean,需要付出相应数量的猫粮,而且可以选择支付...
6. **FatMouse' Trade**: 可能是一个基于策略的游戏问题,要求计算最优交易策略。解题时需要深入理解游戏规则,并能构建有效的算法模型。 7. **Fibonacci Again**: 与斐波那契数列相关的题目,除了常规的递归和...
在给定的题目"FatMouse's Trade"中,问题涉及到如何用有限的猫粮(贪心决策变量)换取最多的JavaBean(目标变量),并且每间仓库的交易比例可以是任意实数。由于这个问题没有明确的最优子结构特征,因此不适合直接...
1001 计算直线的交点数 1002 FatMouse's Speed1003 Common Subsequence1004 Max Sum 1005 Super Jumping! Jumping! Jumping! 1006 免费馅饼 1007 Humble Numbers1008 Monkey and Banana 1009 龟兔赛跑 1010 数塔
9. 胖老鼠的游戏:1433FatMouse'Trede.cpp - 这可能是关于游戏策略或动态规划的问题,需要分析老鼠的移动规则,可能涉及矩阵或网格数据结构的处理。 以上题目覆盖了计算机科学的基础知识,包括算法、数据结构、...
1107 FatMouse and Cheese 简单题,不过题目描述有些混乱 1136 Multiple 简单题,BFS 1276 Optimal Array Multiplication Sequence 简单题 1255 The Path 简单题 1250 Always On the Run 简单题 1213 ...
总的来说,"翁凯java课件 FatMouse"提供了一个全面的Java学习路径,从基础的语法和面向对象编程,到高级特性如GUI开发和项目实践。通过这些材料,学习者可以系统地提升自己的Java编程技能,并且通过实际的项目练习...
同样,1100题“Mondriaan's Dream”和1107题“FatMouse and Cheese”虽然也属于动态规划,但可能需要更复杂的组合公式或技巧。 对于一些题目,如1066题“Square Ice”和1245题“Triangles”,可能需要更高级的算法...
最后,课件中还提到一个问题"FatMouse's Speed",这是一个可能需要动态规划解决的实际应用问题,但具体解题策略并未给出,通常这类问题可以通过定义状态和状态转移方程来解决。 总的来说,杭州电子大学的动态规划...
最后,我们看一个HDOJ_1160题——FatMouse's Speed。这个问题涉及到给定一组老鼠的重量和速度,我们要找出每只老鼠被猫抓住的概率,并返回最小概率。为了解决这个问题,我们可以先按照老鼠的重量和速度排序,然后...