제출 #284597

#제출 시각아이디문제언어결과실행 시간메모리
284597ScarletS친구 (IOI14_friend)C++17
8 / 100
1 ms416 KiB
#include <bits/stdc++.h> #define ll long long #define sz(x) (int)(x).size() using namespace std; vector<int> edges[1000]; bool done[1000]; int ans[2]; void dfs(int c, int x, int co[]) { ans[x]+=co[c]; done[c]=1; for (int i : edges[c]) if (!done[i]) dfs(i,x^1,co); } int findSample(int n, int confidence[], int host[], int protocol[]) { for (int i=1;i<n;++i) { if (protocol[i]==0) { edges[i].push_back(host[i]); edges[host[i]].push_back(i); } else { for (int j : edges[host[i]]) { edges[i].push_back(j); edges[j].push_back(i); } } } int tot=0; for (int i=0;i<n;++i) if (!done[i]) { ans[0]=0; ans[1]=0; dfs(i,0,confidence); tot+=max(ans[0],ans[1]); } return tot; } /**int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n; cin>>n; int c[n]; for (int i=0;i<n;++i) cin>>c[i]; int h[n]; for (int i=1;i<n;++i) cin>>h[i]; int p[n]; for (int i=1;i<n;++i) cin>>p[i]; cout<<findSample(n,c,h,p); return 0; }**/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...