HDU 4858 项目管理

BestCoder Round #1

数据不大

#include<bits.stdc++.h>
using namespace std;
vector<int>vec[100020];
int f[100020];
int main()
{
	int T,n,m,a,b,cmd,Q,u,v;
	scanf("%d",&T);
	for(int kase=1;kase<=T;kase++)
	{
	    scanf("%d%d",&n,&m);
	    for(int i=1;i<=n;i++)
            vec[i].clear();
        memset(f,0,sizeof(f));
	    for(int i=1;i<=m;i++)
	    {
	        scanf("%d%d",&a,&b);
	        vec[a].push_back(b);
	        vec[b].push_back(a);
	    }
	    scanf("%d",&Q);
	    for(int i=1;i<=Q;i++)
	    {
	        scanf("%d",&cmd);
	        if(cmd==0)
	        {
	            scanf("%d%d",&u,&v);
	            f[u]+=v;
	        }
	        else
	        {
	            scanf("%d",&u);
	            int sum=0;
	            for(int i=0;i<vec[u].size();i++)
                    sum+=f[vec[u][i]];
                printf("%d
",sum);
	        }
	    }
	}
	return 0;
}


原文地址:https://www.cnblogs.com/gavanwanggw/p/6897477.html