#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
struct xinxi
{
int a;
int b;
}c[1010];
int cmp(xinxi x,xinxi y)
{
return x.a<y.a;
}
int main()
{
int t,i,j,m;
double sum,s0,s1,s2,n;
scanf("%d",&t);
while(t--)
{
scanf("%lf%d",&n,&m);
sum=0,s1=s2=0;
for(i=0;i<=m-1;i++)scanf("%d%d",&c[i].a,&c[i].b);
sort(c,c+m,cmp);
for(i=0;i<=m-1&&n>0;i++)
{
if(n>c[i].a*c[i].b)//参考别人的代码!!!解决了m=1;的情况!!
{
n-=c[i].a*c[i].b;
sum+=c[i].b;
}
else
{
sum+=n/c[i].a;
break;
}
}
#include<string.h>
#include<algorithm>
using namespace std;
struct xinxi
{
int a;
int b;
}c[1010];
int cmp(xinxi x,xinxi y)
{
return x.a<y.a;
}
int main()
{
int t,i,j,m;
double sum,s0,s1,s2,n;
scanf("%d",&t);
while(t--)
{
scanf("%lf%d",&n,&m);
sum=0,s1=s2=0;
for(i=0;i<=m-1;i++)scanf("%d%d",&c[i].a,&c[i].b);
sort(c,c+m,cmp);
for(i=0;i<=m-1&&n>0;i++)
{
if(n>c[i].a*c[i].b)//参考别人的代码!!!解决了m=1;的情况!!
{
n-=c[i].a*c[i].b;
sum+=c[i].b;
}
else
{
sum+=n/c[i].a;
break;
}
}