作业帮 > 英语 > 作业

这是一道acm题目,不知道为什么我的答案总是不对

来源:学生作业帮 编辑:作业帮 分类:英语作业 时间:2024/05/18 07:47:04
这是一道acm题目,不知道为什么我的答案总是不对
Problem J
Time Limit :2000/1000ms (Java/Other) Memory Limit :65536/32768K (Java/Other)
Total Submission(s) :185 Accepted Submission(s) :42
Font:Times New Roman | Verdana | Georgia
Font Size:← →
Problem Description
FatMouse prepared M pounds of cat food,ready to trade with the cats guarding the warehouse containing his favorite food,JavaBean.
The warehouse has N rooms.The i-th room contains J[i] pounds of JavaBeans and requires F[i] pounds of cat food.FatMouse does not have to trade for all the JavaBeans in the room,instead,he may get J[i]* a% pounds of JavaBeans if he pays F[i]* a% pounds of cat food.Here a is a real number.Now he is assigning this homework to you:tell him the maximum amount of JavaBeans he can obtain.
Input
The input consists of multiple test cases.Each test case begins with a line containing two non-negative integers M and N.Then N lines follow,each contains two non-negative integers J[i] and F[i] respectively.The last test case is followed by two -1's.All integers are not greater than 1000.
Output
For each test case,print in a single line a real number accurate up to 3 decimal places,which is the maximum amount of JavaBeans that FatMouse can obtain.
Sample Input
5 3
7 2
4 3
5 2
20 3
25 18
24 15
15 10
-1 -1
Sample Output
13.333
31.500
#include
int main()
{
\x05int b[1000],p[1000],m,r,i,j,k,T,all;
\x05double n[1000],max;
\x05while(scanf("%d%d",&m,&r),=-1 && =-1)
\x05{\x05
\x05for(i=0;i
#include
#include
using namespace std;
float Max(float *f,int& index,int length)
{
float max=0.0;
for(int i=0;imax)
{
max=f[i];
index=i;
}
}
return max;
}
int main()
{
int M,N,*mfood,*cfood,pos;
float *p,maxfood;
while(scanf("%d %d",&M,&N)!=EOF&&M!=-1&&N!=-1)
{
p=new float[N];
cfood=new int[N];
mfood=new int[N];
pos=0;
maxfood=0;
for(int i=0;i=cfood[pos])
{
maxfood+=mfood[pos];
M-=cfood[pos];
}
else
{
maxfood+=(M*pro);
M=0;
}
N--;
p[pos]=0.0;
}
printf("%.3f\n",maxfood);
delete []p;
delete []cfood;
delete []mfood;
}
return 0;
}