Pagini recente » Cod sursa (job #2228660) | Cod sursa (job #1255410) | Cod sursa (job #1843231) | Cod sursa (job #1001917) | Cod sursa (job #694629)
Cod sursa(job #694629)
#include<fstream>
using namespace std;
fstream f("cerere.in",ios::in);
fstream g("cerere.out",ios::out);
long k[100001],t[100001],m[100001],n,str,c[100001];
void stramos(long j,long k)
{
long i,ok=1;
if(k==0)
str=j;
else
for(i=1;i<n && ok;i++)
if(j==m[i])
{
stramos(t[i],k-=1);
ok=0;
}
}
void rezolvare()
{
long i;
for(i=1;i<=n;i++)
{
if(k[i]==0)
g<<c[i]<<" ";
else
{
str=i;
while(k[str]!=0)
{
c[i]++;
stramos(str,k[str]);
}
g<<c[i]<<" ";
}
}
}
void citire()
{
long i;
f>>n;
for(i=1;i<=n;i++)
f>>k[i];
for(i=1;i<n;i++)
f>>t[i]>>m[i];
}
int main()
{
citire();
rezolvare();
f.close();
g.close();
}