Submission #467878

#TimeUsernameProblemLanguageResultExecution timeMemory
467878stefantagaPower Plant (JOI20_power)C++14
100 / 100
192 ms29328 KiB
#include <bits/stdc++.h> using namespace std; vector <int> v[200005]; int din[200005],val[200005]; int dfs(int x,int tata) { int i,maxim=0,maxim2=0; for (i=0; i<v[x].size(); i++) { if (v[x][i]!=tata) { maxim=max(maxim,dfs(v[x][i],x)); din[x]+=din[v[x][i]]; maxim2=max(maxim2,din[v[x][i]]); } } din[x]=max(val[x],din[x]-val[x]); return max(maxim,max(din[x],maxim2+val[x])); } int n,i,x,y; char ch; int main() { ios_base :: sync_with_stdio(false); cin.tie(0); #ifdef HOME ifstream cin("date.in"); ofstream cout("date.out"); #endif // HOME cin>>n; for (i=1; i<=n-1; i++) { cin>>x>>y; v[x].push_back(y); v[y].push_back(x); } for (i=1; i<=n; i++) { cin>>ch; val[i]=ch-'0'; } cout<<dfs(1,0); return 0; }

Compilation message (stderr)

power.cpp: In function 'int dfs(int, int)':
power.cpp:9:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    9 |     for (i=0; i<v[x].size(); i++)
      |               ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...