hdu 4858 项目管理(STL集装箱)
项目管理
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 730 Accepted Submission(s): 258
这个项目有n个节点,用非常多边连接起来。而且这个项目是连通的!
两个节点间可能有多条边,只是一条边的两端必定是不同的节点。
每一个节点都有一个能量值。
如今我们要编写一个项目管理软件。这个软件呢有两个操作:
1.给某个项目的能量值加上一个特定值。
2.询问跟一个项目相邻的项目的能量值之和。(假设有多条边就算多次,比方a和b有2条边。那么询问a的时候b的权值算2次)。
然后对于每一个測试数据,第一行有两个整数n(1 <= n <= 100000)和m(1 <= m <= n + 10)。分别表示点数和边数。
然后m行。每行两个数a和b,表示a和b之间有一条边。
然后一个整数Q。
然后Q行,每行第一个数cmd表示操作类型。
假设cmd为0,那么接下来两个数u v表示给项目u的能量值加上v(0 <= v <= 100)。
假设cmd为1。那么接下来一个数u表示询问u相邻的项目的能量值之和。
全部点从1到n标号。
1 3 2 1 2 1 3 6 0 1 15 0 3 4 1 1 1 3 0 2 33 1 2
4 15 15
主要学习一下STL。容器就是方便。
- #include"stdio.h"
- #include"vector"
- #include"string.h"
- #define N 100100
- using namespace std;
- vector <int>g[N];
- int c[N];
- int main()
- {
- int T,a,b,n,m,q,op,i;
- scanf("%d",&T);
- while(T--)
- {
- scanf("%d%d",&n,&m);
- for(i=0;i<=n;i++) //清空容器
- g[i].clear();
- while(m--)
- {
- scanf("%d%d",&a,&b);
- g[b].push_back(a); //输入数据,感觉就是一个二维数组
- g[a].push_back(b);
- }
- scanf("%d",&q);
- memset(c,0,sizeof(c));
- while(q--)
- {
- scanf("%d",&op);
- if(op==0)
- {
- scanf("%d%d",&a,&b);
- c[a]+=b;
- }
- else
- {
- int s=0;
- scanf("%d",&a);
- for(i=0;i<g[a].size();i++) //对数据的訪问也非常方便
- {
- s+=c[g[a][i]];
- }
- printf("%d\n",s);
- }
- }
- }
- return 0;
- }
版权声明:本文博客原创文章,博客,未经同意,不得转载。
hdu 4858 项目管理(STL集装箱)的更多相关文章
- HDU 4858 项目管理(邻接表 暴力模拟)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858 我们建造了一个大项目!这个项目有n个节点,用很多边连接起来,并且这个项目是连通的! 两个节点间可 ...
- hdu 4858 项目管理 图的分块
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858 我们建造了一个大项目!这个项目有n个节点,用很多边连接起来,并且这个项目是连通的!两个节点间可能 ...
- HDU 4858 项目管理 分块
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4858 题解: 下面说一个插入查询时间复杂度为sqrt(m)的算法: 对每个点定义两个值:val,su ...
- HDU - 4858 项目管理
N个点,M条无向边.现在有Q组操作,一种是给 i号点增加能量,一种是询问 i号点相邻点的能量和(点间有多条边就算两次). 据说暴力能过,但还是用这题学习了一下 点分块 . 度数不超过 sqrt(M) ...
- hdu 4858 项目管理(vector模拟)
# include <stdio.h> # include <algorithm> # include <string.h> # include <vecto ...
- (hdu)4858 项目管理 (vector)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858 Problem Description 我们建造了一个大项目!这个项目有n个节点,用很多边连接起 ...
- HDOJ 4858 项目管理 ( 只是有点 莫队的分块思想在里面而已啦 )
题目: 链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858 题意: 我们建造了一个大项目!这个项目有n个节点,用很多边连接起来,并且这个项目是连通的! ...
- HDU 4858 分块
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4858 题意:中文题面 思路:来自此博客 对每个点定义两个值:val,sum,val记录自己的特征值,s ...
- HDU 2112 HDU Today(STL MAP + Djistra)
题目链接:HDU Today 立即集训要開始,抓紧时间练练手,最短路的基础题,第一次用STL的map 题目非常水,可是错了N遍.手贱了.本题不优点理的就是把地名转化为数字 #include <i ...
随机推荐
- CGI原理解析系列之中的一个----CGI怎样获取WEBserver数据
//gcc get_post.c -o get_post.ums; #include <stdio.h> #include <stdlib.h> #include <un ...
- Entity Framework笔记(一)
最近在看MVC方面的资料,看了几个教程都在使用Entity Framework做数据持久化.之前也听说过这个东西,在微软的网站上看过一个演示视频,但都没怎么去仔细研究.MVC的东西太庞大了,先慢慢熟悉 ...
- Oracle压缩总结2—
估计表压缩效应
使用压缩前,我们可以估算压缩能有多大效果. 11gr2我已经能够使用dbms_comp_advisor,具体代码见附件.只需要运行两个文件dbmscomp.sql和prvtcomp.plb.然后使用D ...
- Spring【AOP】
AOP是OOP的延续,是软件开发中的一个热点. AOP技术,是OOP补充. OOP引入封装.继承和多态建立一种对象层次结构模拟公共行为集合,而对从左到右的关系则显得无能为力.对于AOP则恰恰适应这样的 ...
- 安装、设置与启动MySql绿色版的方法
原文:安装.设置与启动MySql绿色版的方法 1.解压 mysql-noinstall-5.1.30-win32.zip(下载地址http://dev.mysql.com/downloads/mysq ...
- Visual Prolog 的 Web 专家系统 (6)
保存用户响应询价.作为进一步推理的条件 或GOAL段开始.最初的一句是write_startform() write_startform():- write("<form action ...
- 霸气侧漏HTML5--之--canvas(1) api + 弹球例子
html5也许最有吸引力的新功能是canvas 漆.基本可以足够强大后,以取代flash页面的效果.下面来介绍canvas要使用: HTML5 Canvas的基本图形都是以路径为基础的.通常使用Con ...
- 【剑指offer】最大和连续子阵列
个開始,到第3个为止).你会不会被他忽悠住? 输入: 输入有多组数据,每组測试数据包括两行. 第一行为一个整数n(0<=n<=100000),当n=0时,输入结束.接下去的一行包括n个整数 ...
- poj2593 Max Sequence(两个不相交字段的最大总和与)
转载请注明出处:http://blog.csdn.net/u012860063? viewmode=contents 题目链接:id=2593">http://poj.org/prob ...
- Qt Quick 布局演示
于 Qt Widgets 于,我们经常使用许多布局管理器来管理界面 widgets . 于 Qt Quick 实际上,有两个相关的管理和布局库,所谓集 Item Positioner ,所谓集 Ite ...