http://acm.hdu.edu.cn/game/entry/problem/show.php?chapterid=1§ionid=3&problemid=19
#include<bits/stdc++.h>
using namespace std;
const int N=1e3+7;
struct node{
int a,b;
};node g[N];
bool cmp(node x,node y)
{
return x.b-x.a>y.b-y.a;
}
int main()
{
int i,j,k,ans,m,n,t,tt=0,tmp,v;
cin>>t;
while(t--)
{
cin>>v>>n;
for(i=0;i<n;i++) cin>>g[i].a>>g[i].b;
sort(g,g+n,cmp);
for(i=0;i<n;i++)
if(v>=g[i].b) v-=g[i].a;
else break;
if(i!=n) cout<<"No"<<endl;
else cout<<"Yes"<<endl;
}
return 0;
}