#include
#include
using namespace std;
struct qw
{
int x;//坐标
int t;//舌头
int num=0;//数量
int number;//青蛙的序号
};
struct wz
{
int y;//坐标
int w;//重量
bool z=1;//判断蚊子是否被吃
};
bool cmd1(const qw &a,const qw &b)
{
if(a.x==b.x)
return a.t
bool cmd2(const qw &a,const qw &b)
{
return a.number
int main()
{
int n,m;
cin>>n>>m;
qw a[n];
wz b[m];
for(int i=0;i
cin>>a[i].x>>a[i].t;
a[i].number=i+1;
}
for(int i=0;i
cin>>b[i].y>>b[i].w;
}//输入部分
sort(a,a+n,cmd1);//第一次排序
bool falg=true;//一个判断标志,当有蚊子被吃,继续循环
while(falg)
{
falg=false;
for(int i=0;i
for(int j=0;j
if(b[i].y>=a[j].x&&b[i].y<=a[j].x+a[j].t&&b[i].z)
{
a[j].t+=b[i].w;
a[j].num++;
b[i].z=0;
falg=true;//标志
break;
}
}
}
}
sort(a,a+n,cmd2);//还原顺序
for(int i=0;i
cout << a[i].num<<" "< }//输出
return 0;
}



