#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<queue>
#define min(x, y) (x) < (y) ? (x) : (y)
using namespace std;
int n, m, a[10002];
double b[10002];
double dp[10002];
int main()
{
while (cin>>n>>m,n|m)//好吧。。。n|m 条件居然忘了写。。导致wa &_&...
{
for (int i = 1; i <= m; i++)
cin>>a[i]>>b[i];
for (int i = 0; i <= n; i++)
dp[i] = 1;
for (int i = 1; i <= m; ++i)
{
for (int j = n; j >= a[i]; --j)
{
dp[j] = min(dp[j], dp[j-a[i]]*(1-b[i]));
}
}
printf("%.1lf%%\n", (1-dp[n])*100);
}
}
hdu 1203 I NEED A OFFER!
最新推荐文章于 2020-04-08 21:00:01 发布