제출 #842568

#제출 시각아이디문제언어결과실행 시간메모리
842568irmuun가장 긴 여행 (IOI23_longesttrip)C++17
컴파일 에러
0 ms0 KiB
#include<bits/stdc++.h> #include "longesttrip.h" using namespace std; #define ll long long #define pb push_back #define ff first #define ss second #define all(s) s.begin(),s.end() #define rall(s) s.rbegin(),s.rend() bool con[256][256]; bool are_connected(vector<int>a,vector<int>b){ bool ok=false; for(auto x:a){ for(auto y:b){ ok|=con[x][y]; } } return ok; } vector<int>longest_trip(int N, int D){ vector<int>ans; if(D==3){ vector<int>ans(N); iota(all(ans),0); return ans; } if(D==2){ vector<int>ans; ans.pb(0); int l=0,r=0; int x; for(int i=1;i<N;i++){ if(are_connected({0},{i})==true){ ans.pb(i); x=i; r=i; break; } } for(int i=1;i<N;i++){ if(i!=x){ if(are_connected({l},{i})){ ans.insert(ans.begin(),i); l=i; } else{ ans.pb(i); r=i; } } } return ans; } vector<int>v,u; int l0=0,r0=0,l1=1,r1=1; v.pb(0); u.pb(1); for(int i=1;i<N;i++){ if(are_connected({l0,r0},{i})==false){ if(are_connected({l0},{i})==true){ l0=i; v.insert(v.begin(),i); } else{ v.pb(i); r0=i; } } else{ if(are_connected({r0},{r1})==true){ reverse(all(u)); v.insert(v.end(),all(u)); u.clear(); u.pb(i); r0=v.back(); l1=i; r1=i; } else{ r1=i; u.pb(i); } } } if(v.size()>=u.size()){ return v; } return u; }

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

longesttrip.cpp: In function 'std::vector<int> longest_trip(int, int)':
longesttrip.cpp:35:17: warning: variable 'r' set but not used [-Wunused-but-set-variable]
   35 |         int l=0,r=0;
      |                 ^
longesttrip.cpp:60:19: warning: variable 'l1' set but not used [-Wunused-but-set-variable]
   60 |     int l0=0,r0=0,l1=1,r1=1;
      |                   ^~
longesttrip.cpp:46:13: warning: 'x' may be used uninitialized in this function [-Wmaybe-uninitialized]
   46 |             if(i!=x){
      |             ^~
/usr/bin/ld: /tmp/ccrqySv6.o: in function `are_connected(std::vector<int, std::allocator<int> >, std::vector<int, std::allocator<int> >)':
stub.cpp:(.text+0xc0): multiple definition of `are_connected(std::vector<int, std::allocator<int> >, std::vector<int, std::allocator<int> >)'; /tmp/ccRscy36.o:longesttrip.cpp:(.text+0x0): first defined here
collect2: error: ld returned 1 exit status