项目管理 hdoj 4858 (vector初学)

来源:互联网 发布:手机上能装修淘宝店铺 编辑:程序博客网 时间:2024/05/16 05:46

项目管理 hdoj 4858 (vector初学)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858
本身是个水水题,但是给刚学的朋友练练手是可以的咯。
题目因为数据太大,会爆内存,用时间换内存就爆了时间。。。
看了下题解,知道用vector,就把vector学了下,水了下面的题。
还不会的同学快来看看吧:
http://blog.csdn.net/qq_33199236/article/details/51283898
ac代码
注意:用cin,cout会爆时间。。。

#include <stdio.h>#include <math.h>#include <string.h>#include <algorithm>#include <iostream>#include <vector>using namespace std;#define N 100001#define PI 3.1415927vector<int> a[N];int sum[N];int main(){    int t;    scanf("%d",&t);    while(t--)    {        memset(a,0,sizeof(a));        memset(sum,0,sizeof(sum));        int m,n;        scanf("%d%d",&n,&m);        while(m--)        {            int x,y;            scanf("%d%d",&x,&y);            a[x].push_back(y);            a[y].push_back(x);        }        int h;        scanf("%d",&h);        while(h--)        {            int pan;            cin >> pan;            if(pan)            {                int x,ans=0;                scanf("%d",&x);                for(int i = 0; i < a[x].size(); i++)                    ans += sum[a[x][i]];                printf("%d\n",ans);            }            else            {                int x,y;                scanf("%d%d",&x,&y);                sum[x] += y;            }        }    }    return 0;}
0 0