到底怎么回事QWQ
#include <bits/stdc++.h>
using namespace std;
struct no
{
int k,a;
}qi[201];
int s[201];
int n,m,t;
bool cmp(no aa,no bb)
{
return aa.k>bb.k;
}
bool can(int x)
{
int re=x;
for(int i=1;i<=n;i++)
{
s[i]=re/qi[i].k;
if(s[i]>qi[i].a)
{
return false;
}
re-=s[i]*qi[i].k;
}
if(re==0)
{
return true;
}
else
{
return false;
}
}
int main()
{
//freopen("watch.in","r",stdin);
//freopen("watch.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
{
scanf("%d%d",&qi[i].k,&qi[i].a);
}
sort(qi+1,qi+n+1,cmp);
for(int i=1;i<=m;i++)
{
scanf("%d",&t);
if(can(t))
{
printf("Yes\n");
}
else
{
printf("No\n");
}
}
return 0;
}