Pagini recente » Statistici Petric Maria (petric_maria) | Cod sursa (job #1294573) | Cod sursa (job #2890791) | Cod sursa (job #3132044) | Cod sursa (job #1307509)
#include <fstream>
#include <vector>
#define NMAX 16002
using namespace std;
ifstream fin("asmax.in");
ofstream fout("asmax.out");
vector <int> v[NMAX];
int viz[NMAX];
long long smax=-NMAX,a[NMAX];
int n;
void deepsearch(int x){
viz[x]=1;
for(int i=0; i<v[x].size(); i++)
if(!viz[v[x][i]]){
deepsearch(v[x][i]);
if(a[v[x][i]] > 0)
a[x]+=a[v[x][i]];
}
if(a[x]>smax)
smax=a[x];
}
int main() {
fin>>n;
for(int i=1; i<=n; i++)
fin>>a[i];
for(int i=1; i<n; i++)
{
int x,y;
fin>>x>>y;
v[x].push_back(y);
v[y].push_back(x);
}
deepsearch(1);
fout<<smax;
fin.close();fout.close();
return 0;
}