Pagini recente » Cod sursa (job #886574) | Cod sursa (job #2857824) | Cod sursa (job #1737506) | Cod sursa (job #164660) | Cod sursa (job #1788002)
#include <iostream>
#include<fstream>
#include<vector>
using namespace std;
ifstream f("arbore.in");
ofstream g("arbore.out");
int n,m,s,i,S[100001],p,x,y,t;
vector<int>v[100010];
int DFS(int nod)
{
if(x==s)
return nod;
int sz=v[nod].size();
for(int k=0;k<sz;k++)
{
x+=S[v[nod][k]];
DFS(v[nod][k]);
}
x-=S[nod];
}
int main()
{
f>>n>>m;
for(i=1; i<n; i++)
{
f>>x>>y;
v[x].push_back(y);
}
for(i=1; i<=m; i++)
{
f>>t;
if(t==1)
{
f>>p>>s;
S[p]+=s;
}
else
{
f>>s;
x=S[1];
g<<DFS(1)<<'\n';
}
}
}