이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
using namespace std;
typedef long long int lli;
lli a, b, c, d, e, f, g, h, parx[2009], pary[2009], root, ans[2009]={}, cnt[2009]={};
vector<lli> D[2009], x[2009];
void DSF(lli u)
{
for(auto v: x[u])
{
cnt[v]++;
}
lli m=u;
while(m!=0)
{
ans[u]+=cnt[m];
m=pary[m];
}
for(auto v: D[u])
{
DSF(v);
}
for(auto v: x[u])
{
cnt[v]--;
}
}
int main()
{
//freopen("test.inp","r",stdin);
cin>>a>>b;
for(int i=1;i<=a;i++)
{
cin>>parx[i]>>pary[i];
if(parx[i]==0)
{
root==i;
}
D[parx[i]].push_back(i);
}
for(int i=1;i<=b;i++)
{
cin>>c>>d;
x[c].push_back(d);
}
DSF(root);
for(int i=1;i<=a;i++)
{
cout<<ans[i]<<endl;
}
}
컴파일 시 표준 에러 (stderr) 메시지
spy.cpp: In function 'int main()':
spy.cpp:36:8: warning: statement has no effect [-Wunused-value]
root==i;
^
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |