Cod sursa(job #2395194)

Utilizator robertrRotaru Stefan Robert robertr Data 2 aprilie 2019 12:25:11
Problema Cerere Scor 50
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
using namespace std;
ifstream f("cerere.in");
ofstream g("cerere.out");
int grad[100005],tata[100005],n;
int main()
{
    f>>n;
    for(int i=1;i<=n;i++)
        f>>grad[i];
    for(int i=1;i<n;i++)
    {
        int a,b;
        f>>a>>b;
        tata[b]=a;
    }
    for(int k=1;k<=n;k++)
    {
        int p=k;
        int nr=0;
        while(grad[p]!=0)
        {
            int x=grad[p];
            for(int i=1;i<=x;i++)
            {
                p=tata[p];
            }
            nr++;
        }
        g<<nr<<" ";
    }
    return 0;
}