我用临接表模拟容器超时
#include<stdio.h>
#include<string.h>
#include<vector>
using namespace std;
#define N 110000
vector<int>q[N];
int f[N];
int main() {
int t,n,m,i,j,k,a,b;
scanf("%d",&t);
while(t--) {
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
q[i].clear();
while(m--) {
scanf("%d%d",&a,&b);
q[a].push_back(b);
q[b].push_back(a);
}
memset(f,0,sizeof(f));
scanf("%d",&k);
while(k--) {
scanf("%d",&i);
if(i==0) {
scanf("%d%d",&a,&b);
f[a]+=b;
}
else {
scanf("%d",&a);
int sum=0;
for(i=0;i<q[a].size();i++)
sum+=f[q[a][i]];
printf("%d
",sum);
}
}
}
return 0;
}