# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
229045 | 2020-05-03T10:00:36 Z | VEGAnn | Sunčanje (COCI18_suncanje) | C++14 | Compilation error |
0 ms | 0 KB |
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> #define PB push_back using namespace std; using namespace __gnu_pbds; template <class T> using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>; typedef long long ll; const int N = 10100; const int PW = 22; const int oo = 2e9; bool mrk[N]; int x1[N], y1[N], x2[N], y2[N], n; ordered_set<pii> up, down, left, right; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; for (int i = 0; i < n; i++){ int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; x2[i] = x1[i] + X; y2[i] = y1[i] + Y; } up.clear(); down.clear(); left.clear(); right.clear(); for (int i = n - 1; i >= 0; i--){ if (i < n - 1){ int kol = 0; kol += sz(up) - up.order_of_key(MP(y2[i] - 1, oo)); kol += left.order_of_key(MP(x1[i], oo)); kol += down.order_of_key(MP(y1[i], oo)); kol += sz(right) - right.order_of_key(MP(x2[i] - 1, oo)); if (kol < n - i) mrk[i] = 1; } // add new elements up.insert(MP(y1[i], i)); down.insert(MP(y2[i], i)); left.insert(MP(x2[i], i)); right.insert(MP(x1[i], i)); } for (int i = 0; i < n; i++) cout << (mrk[i] ? "NE\n" : "DA\n"); return 0; }
Compilation message
suncanje.cpp:14:16: error: 'int y1 [10100]' redeclared as different kind of symbol int x1[N], y1[N], x2[N], y2[N], n; ^ In file included from /usr/include/features.h:367:0, from /usr/include/x86_64-linux-gnu/c++/7/bits/os_defines.h:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/c++config.h:533, from /usr/include/c++/7/cassert:43, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:33, from suncanje.cpp:1: /usr/include/x86_64-linux-gnu/bits/mathcalls.h:251:1: note: previous declaration 'double y1(double)' __MATHCALL (y1,, (_Mdouble_)); ^ suncanje.cpp:15:13: error: 'pii' was not declared in this scope ordered_set<pii> up, down, left, right; ^~~ suncanje.cpp:15:16: error: template argument 1 is invalid ordered_set<pii> up, down, left, right; ^ suncanje.cpp: In function 'int main()': suncanje.cpp:23:39: warning: pointer to a function used in arithmetic [-Wpointer-arith] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ^ suncanje.cpp:23:32: error: no match for 'operator>>' (operand types are 'std::basic_istream<char>::__istream_type {aka std::basic_istream<char>}' and 'double(double) throw ()') int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~~~~~~~~~~^~~~~~~~ In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:120:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__istream_type& (*)(std::basic_istream<_CharT, _Traits>::__istream_type&)) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(__istream_type& (*__pf)(__istream_type&)) ^~~~~~~~ /usr/include/c++/7/istream:120:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'std::basic_istream<char>::__istream_type& (*)(std::basic_istream<char>::__istream_type&) {aka std::basic_istream<char>& (*)(std::basic_istream<char>&)}' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:124:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__ios_type& (*)(std::basic_istream<_CharT, _Traits>::__ios_type&)) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>; std::basic_istream<_CharT, _Traits>::__ios_type = std::basic_ios<char>] <near match> operator>>(__ios_type& (*__pf)(__ios_type&)) ^~~~~~~~ /usr/include/c++/7/istream:124:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'std::basic_istream<char>::__ios_type& (*)(std::basic_istream<char>::__ios_type&) {aka std::basic_ios<char>& (*)(std::basic_ios<char>&)}' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:131:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(ios_base& (*__pf)(ios_base&)) ^~~~~~~~ /usr/include/c++/7/istream:131:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'std::ios_base& (*)(std::ios_base&)' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:168:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(bool&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(bool& __n) ^~~~~~~~ /usr/include/c++/7/istream:168:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: cannot bind non-const lvalue reference of type 'bool&' to an rvalue of type 'bool' int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:172:7: note: candidate: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(short int&) [with _CharT = char; _Traits = std::char_traits<char>] <near match> operator>>(short& __n); ^~~~~~~~ /usr/include/c++/7/istream:172:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'short int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(short int)(y1 + ((sizetype)i))' to 'short int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:175:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(short unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(unsigned short& __n) ^~~~~~~~ /usr/include/c++/7/istream:175:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'short unsigned int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(short unsigned int)(y1 + ((sizetype)i))' to 'short unsigned int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:179:7: note: candidate: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(int&) [with _CharT = char; _Traits = std::char_traits<char>] <near match> operator>>(int& __n); ^~~~~~~~ /usr/include/c++/7/istream:179:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(int)(y1 + ((sizetype)i))' to 'int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:182:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(unsigned int& __n) ^~~~~~~~ /usr/include/c++/7/istream:182:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'unsigned int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(unsigned int)(y1 + ((sizetype)i))' to 'unsigned int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:186:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(long& __n) ^~~~~~~~ /usr/include/c++/7/istream:186:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'long int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(long int)(y1 + ((sizetype)i))' to 'long int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:190:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(unsigned long& __n) ^~~~~~~~ /usr/include/c++/7/istream:190:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'long unsigned int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(long unsigned int)(y1 + ((sizetype)i))' to 'long unsigned int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:195:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(long long& __n) ^~~~~~~~ /usr/include/c++/7/istream:195:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'long long int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(long long int)(y1 + ((sizetype)i))' to 'long long int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:199:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(unsigned long long& __n) ^~~~~~~~ /usr/include/c++/7/istream:199:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'long long unsigned int' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(long long unsigned int)(y1 + ((sizetype)i))' to 'long long unsigned int&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:235:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(void*&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] <near match> operator>>(void*& __p) ^~~~~~~~ /usr/include/c++/7/istream:235:7: note: conversion of argument 1 would be ill-formed: suncanje.cpp:23:39: error: invalid conversion from 'double (*)(double) throw ()' to 'void*' [-fpermissive] int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ~~~~^ suncanje.cpp:23:39: error: cannot bind rvalue '(void*)(y1 + ((sizetype)i))' to 'void*&' In file included from /usr/include/c++/7/sstream:38:0, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/istream:214:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(float&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] operator>>(float& __f) ^~~~~~~~ /usr/include/c++/7/istream:214:7: note: no known conversion for argument 1 from 'double(double) throw ()' to 'float&' /usr/include/c++/7/istream:218:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(double&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] operator>>(double& __f) ^~~~~~~~ /usr/include/c++/7/istream:218:7: note: no known conversion for argument 1 from 'double(double) throw ()' to 'double&' /usr/include/c++/7/istream:222:7: note: candidate: std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long double&) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>] operator>>(long double& __f) ^~~~~~~~ /usr/include/c++/7/istream:222:7: note: no known conversion for argument 1 from 'double(double) throw ()' to 'long double&' /usr/include/c++/7/istream:259:7: note: candidate: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__streambuf_type*) [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<char>] operator>>(__streambuf_type* __sb); ^~~~~~~~ /usr/include/c++/7/istream:259:7: note: no known conversion for argument 1 from 'double(double) throw ()' to 'std::basic_istream<char>::__streambuf_type* {aka std::basic_streambuf<char>*}' In file included from /usr/include/c++/7/string:53:0, from /usr/include/c++/7/bits/locale_classes.h:40, from /usr/include/c++/7/bits/ios_base.h:41, from /usr/include/c++/7/ios:42, from /usr/include/c++/7/istream:38, from /usr/include/c++/7/sstream:38, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/bits/basic_string.tcc:1465: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, _Alloc>&) operator>>(basic_istream<_CharT, _Traits>& __in, ^~~~~~~~ /usr/include/c++/7/bits/basic_string.tcc:1465:5: note: template argument deduction/substitution failed: suncanje.cpp:23:39: note: mismatched types 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>' and 'double(double) throw ()' int X, Y; cin >> x1[i] >> y1[i] >> X >> Y; ^ In file included from /usr/include/c++/7/istream:991:0, from /usr/include/c++/7/sstream:38, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from suncanje.cpp:1: /usr/include/c++/7/bits/istream.tcc:963:5: note: candidate: template<class _CharT2, class _Trait