Submission #286594


Source Code Expand

#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <cassert>
#include <string>
#include <algorithm>
#include <vector>
#include <queue>
#include <stack>
#include <functional>
#include <iostream>
#include <map>
#include <set>
using namespace std;
typedef pair<int,int> P;
typedef pair<int,P> P1;
typedef pair<P,P> P2;
typedef long long ll;
#define pu push
#define pb push_back
#define mp make_pair
#define eps 1e-7
#define INF 1000000000
#define fi first
#define sc second
#define rep(i,x) for(int i=0;i<x;i++)
int sub[105];
int e[105];
vector<int>edge[105];
int res = 0;
void dfs(int v,int u)
{
	sub[v] = e[v];
	for(int i=0;i<edge[v].size();i++)
	{
		if(edge[v][i] == u) continue;
		dfs(edge[v][i],v);
		sub[v] += sub[edge[v][i]];
	}
}
void d(int v,int u)
{
	for(int i=0;i<edge[v].size();i++)
	{
		if(edge[v][i] == u) continue;
		if(sub[edge[v][i]])
		{
			res++;
			d(edge[v][i],v);
		}
	}
}
int main()
{
	int n,x;
	cin >> n >> x;
	for(int i=1;i<=n;i++) cin >> e[i];
	for(int i=1;i<n;i++)
	{
		int a,b; cin >> a >> b;
		edge[a].pb(b);
		edge[b].pb(a);
	}
	dfs(x,-1);
	d(x,-1);
	cout << res*2 << endl;
}

Submission Info

Submission Time
Task B - ツリーグラフ
User IH19980412
Language C++ (G++ 4.6.4)
Score 100
Code Size 1218 Byte
Status AC
Exec Time 24 ms
Memory 928 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 20
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_02.txt
All subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_line01.txt, subtask1_line02.txt, subtask1_line03.txt, subtask1_line04.txt, subtask1_line05.txt, subtask1_line06.txt, subtask1_random01.txt, subtask1_random02.txt, subtask1_random03.txt, subtask1_random04.txt, subtask1_random05.txt, subtask1_random06.txt, subtask1_random07.txt, subtask1_random08.txt, subtask1_special01.txt, subtask1_special02.txt, subtask1_special03.txt, subtask1_special04.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 22 ms 748 KB
subtask0_sample_02.txt AC 22 ms 924 KB
subtask1_line01.txt AC 21 ms 800 KB
subtask1_line02.txt AC 23 ms 924 KB
subtask1_line03.txt AC 22 ms 800 KB
subtask1_line04.txt AC 22 ms 800 KB
subtask1_line05.txt AC 22 ms 928 KB
subtask1_line06.txt AC 22 ms 672 KB
subtask1_random01.txt AC 22 ms 792 KB
subtask1_random02.txt AC 24 ms 788 KB
subtask1_random03.txt AC 22 ms 928 KB
subtask1_random04.txt AC 23 ms 804 KB
subtask1_random05.txt AC 23 ms 796 KB
subtask1_random06.txt AC 24 ms 800 KB
subtask1_random07.txt AC 24 ms 928 KB
subtask1_random08.txt AC 24 ms 792 KB
subtask1_special01.txt AC 24 ms 796 KB
subtask1_special02.txt AC 24 ms 800 KB
subtask1_special03.txt AC 22 ms 680 KB
subtask1_special04.txt AC 23 ms 796 KB