HDU 4858 프로젝트 관리(아날로그)

1249 단어

HDU 4858 프로젝트 관리


제목 링크
질문
사고방식: 시뮬레이션만 하면 돼요.Q의 데이터 범위를 주지 않았다--, 그리 크지 않을 것 같다
코드:
#include 
#include 
#include 
using namespace std;

const int N = 100005;
int t, n, m, node[N];
vector g[N];

int cal(int u) {
	int ans = 0;
	for (int i = 0; i < g[u].size(); i++)
		ans += node[g[u][i]];
	return ans;
}

int main() {
	scanf("%d", &t);
	while (t--) {
		scanf("%d%d", &n, &m);
		int u, v;
		for (int i = 1; i <= n; i++) {
			g[i].clear();
			node[i] = 0;
		}
		while (m--) {
			scanf("%d%d", &u, &v);
			g[u].push_back(v);
			g[v].push_back(u);
		}
		int q;
		scanf("%d", &q);
		while (q--) {
			int c, a, b;
			scanf("%d", &c);
			if (c == 0) {
				scanf("%d%d", &a, &b);
				node[a] += b;
			}
			else {
				scanf("%d", &a);
				printf("%d
", cal(a)); } } } return 0; }

좋은 웹페이지 즐겨찾기