답안 #35009

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
35009 2017-11-17T09:22:11 Z antran2202 스파이 (JOI13_spy) C++14
0 / 100
139 ms 5468 KB
//code.cpp
#include <bits/stdc++.h>
using namespace std;
#define whole(x) x.begin(),x.end()
#define sz(x) ((int)x.size())
#define sqr(x) ((x)*(x))
#define pb push_back
#define mp make_pair
#define ins insert
#define _(a) #a << " : " << (a)
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef vector<int> vi;
//----------------------------------------------------------
const int inf = 1e9, maxn = 2001;
const ll inff = 1e18;
const ld eps = 1e-9, pi = acos (-1);
int n, k, m;
int p, q[maxn], c[maxn], res[maxn];
vi adj[maxn], ja[maxn];
int cnt[maxn];
int hihi (int i)
{
	int res = 0;
	while (i != 0)
	{
		if (cnt[i]) res++;
		i = q[i];
	}
	return res;
}
void dfs (int i)
{
	for (int j : ja[i]) cnt[j] ++;
	res[i] = hihi (i);
	for (int j : adj[i])
		dfs (j);
	for (int j : ja[i]) cnt[j] --;
}
void input ()
{
	cin >> n >> m;
	for (int i = 1; i <= n; ++i)
		cin >> p >> q[i], adj[p].pb (i);
	int s, r;
	for (int i = 1; i <= m; ++i)
		cin >> s >> r, ja[s].pb (r);
}
void solve ()
{
	dfs (0);
	for (int i = 1; i <= n; ++i) cout << res[i] << '\n';
}
int main()
{
	#ifdef tcva
	clock_t sttime = clock ();
	#endif
	ios_base::sync_with_stdio(false);
	cin.tie (NULL);
	cout.tie (NULL);
	//freopen ("spy.inp", "r", stdin);
	//freopen ("spy.out", "w", stdout);
	input ();
	solve ();
	#ifdef tcva
	clock_t entime = clock ();
	cerr << "\nExecution time: " << double (entime - sttime) / CLOCKS_PER_SEC << "s";
	#endif
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 2300 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 6 ms 2432 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 139 ms 5468 KB Execution killed because of forbidden syscall writev (20)
2 Halted 0 ms 0 KB -