hdu1203,大牛帮忙看下吧,从论坛里面找到的所有测试都过了,可还是WA,帮个忙啊T^T,好人平安

发布网友 发布时间:2022-04-24 14:20

我来回答

1个回答

热心网友 时间:2023-10-16 03:45

59213102012-05-10 01:30:52Accepted120346MS320K705 BC++Parker

limit 为0不代表一定不能申到学校哦~

#include"stdio.h"
#include"string.h"
struct A
{
int a;
double b; //记录“非”!
}E[1011];

double min(double a,double b)
{
return a<b?a:b;
}

int main()
{
double pro[10011]; //记录“非”!
double temp;
int i,l;
int limit,n;
while(scanf("%d%d",&limit,&n),limit||n)
{
for(i=1;i<=n;i++)
{
scanf("%d%lf",&E[i].a,&temp);
E[i].b=1-temp;
}
if(n==0) // limit 为0不代表一定不能申到学校哦~
{
printf("0.0%%\n");
continue;
}

for(l=0;l<=limit;l++)
pro[l]=1;
for(i=1;i<=n;i++)
for(l=limit;l-E[i].a>=0;l--)
pro[l]=min(pro[l],pro[l-E[i].a]*E[i].b);

printf("%0.1lf%%\n",100-100*pro[limit]);
}
return 0;
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com