# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
256587 | 2020-08-02T21:49:14 Z | ElyesChaabouni | Vudu (COCI15_vudu) | C++14 | 컴파일 오류 |
0 ms | 0 KB |
/*#pragma GCC optimize("O3") #pragma GCC target ("avx2") #pragma GCC optimization ("O3") #pragma GCC optimization ("unroll-loops")*/ #include<bits/stdc++.h> //#include <ext/pb_ds/assoc_container.hpp> //#include <ext/pb_ds/tree_policy.hpp> //#define ordered_set tree<int, null_type,less<int >, rb_tree_tag,tree_order_statistics_node_update> #define eps 1e-9 #define MOD1 998244353 #define MOD2 1000000007 #define INV_10 299473306 #define INF 1000000001 #define PI 3.14159265358979323846 using namespace std; int main() { ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); int n; cin >> n; vector<pair<long long, int> >v(n); //cout << n << '\n'; for(int i = 0; i < n; i++) cin >> v[i]; int p; cin >> p; long long sum=0, cu=0, ans=0; for(int i = n-1; i >= 0; i--) { sum+=a[i]; v.push_back(make_pair(sum-cu, i)); //cout << here[i] << ' '; cu+=p; } //cout << '\n'; sort(v.begin(), v.end()); int m[n]; for(int i = 0; i < n; i++) { m[v[i].second]=i; } int pp=1; while(pp <= n) pp*=2; cu=0; int tree[2*p+1]; for(int i = 0; i <2*p+1; i++) tree[i]=0; for(int i = p; i <= p+n-1; i++) tree[i]=1; for(int i = p-1; i >= 1; i--) tree[i]=tree[2*i]+tree[2*i+1]; sum=0; for(int i = n-1; i >= 0; i--) { vector<pair<long long, int> >::iterator it=lower_bound(v.begin(), v.end(), make_pair(p+sum-cu, -1)); if(it!=v.end()) { int x=(it-v.begin())+p, y=n-1+p; while(x <= y) { if(x%2==1) { ans+=tree[x]; x++; } if(y%2==0) { ans+=tree[y]; y--; } x/=2; y/=2; } } //cout << s.order_of_key(*s.lower_bound(make_pair(p+pr-cu, -1))) << '\n'; sum+=a[i]; int x=m[i]+p; while(x >= 1) { tree[x]--; x/=2; } cu+=p; } cout << ans << '\n'; //printf("%lld", ans); }
Compilation message
vudu.cpp: In function 'int main()': vudu.cpp:24:7: error: no match for 'operator>>' (operand types are 'std::istream {aka std::basic_istream<char>}' and '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}') cin >> v[i]; 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 vudu.cpp:5: /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>] operator>>(__istream_type& (*__pf)(__istream_type&)) ^~~~~~~~ /usr/include/c++/7/istream:120:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'std::basic_istream<char>::__istream_type& (*)(std::basic_istream<char>::__istream_type&) {aka std::basic_istream<char>& (*)(std::basic_istream<char>&)}' /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>] operator>>(__ios_type& (*__pf)(__ios_type&)) ^~~~~~~~ /usr/include/c++/7/istream:124:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'std::basic_istream<char>::__ios_type& (*)(std::basic_istream<char>::__ios_type&) {aka std::basic_ios<char>& (*)(std::basic_ios<char>&)}' /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>] operator>>(ios_base& (*__pf)(ios_base&)) ^~~~~~~~ /usr/include/c++/7/istream:131:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'std::ios_base& (*)(std::ios_base&)' /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>] operator>>(bool& __n) ^~~~~~~~ /usr/include/c++/7/istream:168:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'bool&' /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>] operator>>(short& __n); ^~~~~~~~ /usr/include/c++/7/istream:172:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'short int&' /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>] operator>>(unsigned short& __n) ^~~~~~~~ /usr/include/c++/7/istream:175:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'short unsigned int&' /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>] operator>>(int& __n); ^~~~~~~~ /usr/include/c++/7/istream:179:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'int&' /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>] operator>>(unsigned int& __n) ^~~~~~~~ /usr/include/c++/7/istream:182:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'unsigned int&' /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>] operator>>(long& __n) ^~~~~~~~ /usr/include/c++/7/istream:186:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'long int&' /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>] operator>>(unsigned long& __n) ^~~~~~~~ /usr/include/c++/7/istream:190:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'long unsigned int&' /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>] operator>>(long long& __n) ^~~~~~~~ /usr/include/c++/7/istream:195:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'long long int&' /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>] operator>>(unsigned long long& __n) ^~~~~~~~ /usr/include/c++/7/istream:199:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'long long unsigned int&' /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 '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' 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 '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' 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 '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'long double&' /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>] operator>>(void*& __p) ^~~~~~~~ /usr/include/c++/7/istream:235:7: note: no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' to 'void*&' /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 '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' 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 vudu.cpp:5: /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: vudu.cpp:24:13: note: '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}' is not derived from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>' cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/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*) operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s) ^~~~~~~~ /usr/include/c++/7/bits/istream.tcc:963:5: note: template argument deduction/substitution failed: vudu.cpp:24:13: note: mismatched types '_CharT2*' and 'std::pair<long long int, int>' cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/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&) operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c) ^~~~~~~~ /usr/include/c++/7/bits/istream.tcc:931:5: note: template argument deduction/substitution failed: vudu.cpp:24:13: note: deduced conflicting types for parameter '_CharT' ('char' and '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}') cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/istream:756:5: note: candidate: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, unsigned char&) operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c) ^~~~~~~~ /usr/include/c++/7/istream:756:5: note: template argument deduction/substitution failed: vudu.cpp:24:13: note: cannot convert 'v.std::vector<std::pair<long long int, int> >::operator[](((std::vector<std::pair<long long int, int> >::size_type)i))' (type '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}') to type 'unsigned char&' cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/istream:761:5: note: candidate: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, signed char&) operator>>(basic_istream<char, _Traits>& __in, signed char& __c) ^~~~~~~~ /usr/include/c++/7/istream:761:5: note: template argument deduction/substitution failed: vudu.cpp:24:13: note: cannot convert 'v.std::vector<std::pair<long long int, int> >::operator[](((std::vector<std::pair<long long int, int> >::size_type)i))' (type '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}') to type 'signed char&' cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/istream:803:5: note: candidate: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, unsigned char*) operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s) ^~~~~~~~ /usr/include/c++/7/istream:803:5: note: template argument deduction/substitution failed: vudu.cpp:24:13: note: cannot convert 'v.std::vector<std::pair<long long int, int> >::operator[](((std::vector<std::pair<long long int, int> >::size_type)i))' (type '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}') to type 'unsigned char*' cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/istream:808:5: note: candidate: template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(std::basic_istream<char, _Traits>&, signed char*) operator>>(basic_istream<char, _Traits>& __in, signed char* __s) ^~~~~~~~ /usr/include/c++/7/istream:808:5: note: template argument deduction/substitution failed: vudu.cpp:24:13: note: cannot convert 'v.std::vector<std::pair<long long int, int> >::operator[](((std::vector<std::pair<long long int, int> >::size_type)i))' (type '__gnu_cxx::__alloc_traits<std::allocator<std::pair<long long int, int> > >::value_type {aka std::pair<long long int, int>}') to type 'signed char*' cin >> v[i]; ^ 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 vudu.cpp:5: /usr/include/c++/7/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&&) operator>>(_Istream&& __is, _Tp&& __x) ^~~~~~~~ /usr/include/c++/7/istream:980:5: note: template argument deduction/substitution failed: /usr/include/c++/7/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_istream<char>&; _Tp = std::pair<long long int, int>&]': vudu.cpp:24:13: required from here /usr/include/c++/7/istream:980:5: error: no type named 'type' in 'struct std::enable_if<false, std::basic_istream<char>&>' In file included from /usr/include/c++/7/ccomplex:39:0, from /usr/include/x86_6