题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858
解析:
题目比较简单,注意实时更新就可以了。
代码:
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std;
#define MAXN 100005
#define INF 1e9
vector<int> f[MAXN];
int c[MAXN];
int main(){
int T;
int n,m,Q;
scanf("%d", &T);
while(T--){
scanf("%d%d", &n,&m);
int i,j;
for(i=0; i<m; ++i){
int a,b;
scanf("%d%d", &a,&b);
f[a].push_back(b);
f[b].push_back(a);
}
fill(c+1,c+n+1,0);
scanf("%d", &Q);
for(i=0; i<Q; ++i){
int cmd, u, v;
scanf("%d", &cmd);
if(0 == cmd){
scanf("%d%d", &u, &v);
for(j=0; j<f[u].size(); ++j)
c[f[u][j]] += v;
}
else{
scanf("%d", &u);
printf("%d\n", c[u]);
}
}
for(i=1; i<=n; ++i)
f[i].clear();
}
return 0;
}