# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
655938 | aebov | Network (BOI15_net) | C++17 | 컴파일 에러 | 0 ms | 0 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<iostream>
#include<vector>
#include<cstring>
#include<utility>
#define pb push_back
#define pii pair<int, int>
#define F first
#define S second
using namespace std;
const int N = (int)5e5 + 5;
int n , u, v, ind[N], _id = 0, root = 1;
vector<int> leafs;
vector<pii> ret;
vector<int> adj[N];
void dfs(int v,int p){
ind[v] = _id ++;
for(auto u : adj[v])if(u != p)dfs(u , v);
}
int main(){
ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
cin >> n;
for(int i = 1; i < n ; i ++){
cin >> u >> v;
adj[u].pb(v);
adj[v].pb(u);
}
for(int i = 1; i <= n; i ++)if(adj[i].size() > 1)root = i;
dfs(root, root);
for(int i = 1; i <= n; i ++){
if(adj[i].size() == 1)ret.pb({ind[i], i});
}
sort(ret.begin(), ret.end());
int sz= ret.size();
cout << (sz + 1) >> 1;
for(int i = 0; i < sz/2; i ++) cout << ret[i].S << " " << ret[i + (sz+1)/2].S << endl;
if(k&1) cout << ret[sz/2].S << " " << root << endl;
exit(0);
}
컴파일 시 표준 에러 (stderr) 메시지
net.cpp: In function 'int main()': net.cpp:34:2: error: 'sort' was not declared in this scope; did you mean 'qsort'? 34 | sort(ret.begin(), ret.end()); | ^~~~ | qsort net.cpp:36:19: error: no match for 'operator>>' (operand types are 'std::basic_ostream<char>' and 'int') 36 | cout << (sz + 1) >> 1; | ~~~~~~~~~~~~~~~~ ^~ ~ | | | | | int | std::basic_ostream<char> net.cpp:36:19: note: candidate: 'operator>>(int, int)' (built-in) 36 | cout << (sz + 1) >> 1; | ~~~~~~~~~~~~~~~~~^~~~ net.cpp:36:19: note: no known conversion for argument 1 from 'std::basic_ostream<char>' to 'int' In file included from /usr/include/c++/10/string:56, from /usr/include/c++/10/bits/locale_classes.h:40, from /usr/include/c++/10/bits/ios_base.h:41, from /usr/include/c++/10/ios:42, from /usr/include/c++/10/ostream:38, from /usr/include/c++/10/iostream:39, from net.cpp:1: /usr/include/c++/10/bits/basic_string.tcc:1476:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, std::__cxx11::basic_string<_CharT, _Traits, _Allocator>&)' 1476 | operator>>(basic_istream<_CharT, _Traits>& __in, | ^~~~~~~~ /usr/include/c++/10/bits/basic_string.tcc:1476:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<_CharT, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/istream:991, from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/bits/istream.tcc:931:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, _CharT&)' 931 | operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c) | ^~~~~~~~ /usr/include/c++/10/bits/istream.tcc:931:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<_CharT, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/istream:756:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, unsigned char&)' 756 | operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c) | ^~~~~~~~ /usr/include/c++/10/istream:756:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<char, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/istream:761:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, signed char&)' 761 | operator>>(basic_istream<char, _Traits>& __in, signed char& __c) | ^~~~~~~~ /usr/include/c++/10/istream:761:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<char, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/istream:991, from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/bits/istream.tcc:963:5: note: candidate: 'template<class _CharT2, class _Traits2> std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, _CharT2*)' 963 | operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s) | ^~~~~~~~ /usr/include/c++/10/bits/istream.tcc:963:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<_CharT, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/istream:803:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, unsigned char*)' 803 | operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s) | ^~~~~~~~ /usr/include/c++/10/istream:803:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<char, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/istream:808:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, signed char*)' 808 | operator>>(basic_istream<char, _Traits>& __in, signed char* __s) | ^~~~~~~~ /usr/include/c++/10/istream:808:5: note: template argument deduction/substitution failed: net.cpp:36:22: note: 'std::basic_ostream<char>' is not derived from 'std::basic_istream<char, _Traits>' 36 | cout << (sz + 1) >> 1; | ^ In file included from /usr/include/c++/10/iostream:40, from net.cpp:1: /usr/include/c++/10/istream:980:5: note: candidate: 'template<class _Istream, class _Tp> typename std::enable_if<std::__and_<std::__not_<std::is_lvalue_reference<_Tp> >, std::__is_convertible_to_basic_istream<_Istream>, std::__is_extractable<typename std::__is_convertible_to_basic_istream<_Tp>::__istream_type, _Tp&&, void> >::value, typename std::__is_convertible_to_basic_istream<_Tp>::__istream_type>::type std::operator>>(_Istream&&, _Tp&&)' 980 | operator>>(_Istream&& __is, _Tp&& __x) | ^~~~~~~~ /usr/include/c++/10/istream:980:5: note: template argument deduction/substitution failed: /usr/include/c++/10/istream: In substitution of 'template<class _Istream, class _Tp> typename std::enable_if<std::__and_<std::__not_<std::is_lvalue_reference<_Tp> >, std::__is_convertible_to_basic_istream<_Istream>, std::__is_extractable<typename std::__is_convertible_to_basic_istream<_Tp>::__istream_type, _Tp&&, void> >::value, typename std::__is_convertible_to_basic_istream<_Tp>::__istream_type>::type std::operator>>(_Istream&&, _Tp&&) [with _Istream = std::basic_ostream<char>&; _Tp = int]': net.cpp:36:22: required from here /usr/include/c++/10/istream:980:5: error: no type named 'type' in 'struct std::enable_if<false, void>' net.cpp:38:5: error: 'k' was not declared in this scope 38 | if(k&1) cout << ret[sz/2].S << " " << root << endl; | ^