链接:https://ac.nowcoder.com/acm/contest/923/C
来源:牛客网
#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<string.h>
using namespace std;
const int N=1e5+5;
typedef long long ll;
ll mod = 1e9+7;
ll a[N],b[N],c[N];
int t,n,m,id,pos;
void fun(ll f[]){
for(int i=1;i<=n;i++)
f[i]=(f[i]+f[i-1])%mod;
}
int main(){
scanf("%d",&t);
while(t--){
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
scanf("%d %d",&n,&m);
while(m--){
scanf("%d %d",&id,&pos);
if(id==1)
a[pos]++;
else if(id==2)
b[pos]++;
else{
c[pos]++;
c[pos+1]++;
}
}
fun(a);
fun(b);
fun(b);
fun(c);
fun(c);
fun(c);
int d=0;
for(int i=1;i<=n;i++)
printf(d++==0?"%d":" %d",(a[i]+b[i]+c[i])%mod);
printf("\n");
}
return 0;
}