제출 #422275

#제출 시각아이디문제언어결과실행 시간메모리
422275APROHACKFriend (IOI14_friend)C++14
0 / 100
1094 ms3660 KiB
#include "friend.h" #include <bits/stdc++.h> using namespace std; #define PB push_back #define F first #define S second vector<int>ady[100001]; bool recorrido[100001]; bool prendido[100001]; vector<int>conf; // Find out best sample long long dp(int node, bool cant){ //cout<<node<<endl; if(!cant){ for(auto i:ady[node]){ if(prendido[i]){ cant=true; break; } } } recorrido[node]=true; long long ret=0, ret2=conf[node]; if(cant){ for(auto i:ady[node]){ if(!recorrido[i]){ ret=max(ret, dp(i, false)); } } recorrido[node]=false; //cout<<"c"<<node<<" "<<ret<<endl; return ret; }else{ prendido[node]=true; for(auto i:ady[node]){ if(!recorrido[i]){ ret2=max(dp(i, true), ret2); } } prendido[node]=false; for(auto i:ady[node]){ if(!recorrido[i]){ ret=max(dp(i, false), ret); } } recorrido[node]=false; //cout<<"r"<<node<<" "<<max(ret, ret2)<<endl; return max(ret, ret2); } } int findSample(int n,int confidence[],int host[],int protocol[]){ int ans=10; memset(prendido, false, sizeof prendido); memset(recorrido, false, sizeof recorrido); for(int i = 0 ; i < n ; i++){ conf.PB(confidence[i]); } for(int i = 1 ; i < n ; i++){ if(protocol[i]==0){//IAmYourFriend ady[host[i]].PB(i); ady[i].PB(host[i]); }else if(protocol[i]==1){//MyFriendsAreYourFriends for(auto j:ady[host[i]]){ ady[j].PB(i); ady[i].PB(j); } }else{ for(auto j:ady[host[i]]){ ady[j].PB(i); ady[i].PB(j); } ady[host[i]].PB(i); ady[i].PB(host[i]); } } /* for(int i = 0 ; i < n ; i++){ for(int j = 0 ; j < ady[i].size() ; j++){ cout<<ady[i][j]<<" "; } cout<<endl; }*/ return dp(1, false); }

컴파일 시 표준 에러 (stderr) 메시지

friend.cpp: In function 'int findSample(int, int*, int*, int*)':
friend.cpp:52:6: warning: unused variable 'ans' [-Wunused-variable]
   52 |  int ans=10;
      |      ^~~
#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...