Submission #793938

#TimeUsernameProblemLanguageResultExecution timeMemory
793938vjudge1Passport (JOI23_passport)C++17
Compilation error
0 ms0 KiB
// Author : حسن #include <bits/stdc++.h> using namespace std; #define TL ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); #define rall(s) s.rbegin(),s.rend() #define all(s) s.begin(),s.end() #define pb push_back #define fi first #define se second #define ll long long #define ld long double #define YES cout<<"YES\n" #define Yes cout<<"Yes\n" #define yes cout<<"yes\n" #define NO cout<<"NO\n" #define No cout<<"No\n" #define no cout<<"no\n" const int N = 2500 + 9 , mod = 1e9 + 7; int c[N] = {} , d[N] = {} , a[N] = {}, b[N] = {} , dp[N][N]; vector<pair<ll,ll>>v; void solve(){ ll q , i , j , m , n , z , s = 0, f, l , r , k , x , y , mn = 1e18 , mx = 0; cin>>n; for(i = 1; i <= n; i++){ cin>>a[i]>>b[i]; } cin>>q; cin>>k; if(k == 1){ s = 1; x = 1; y = b[k]; while(y < n){ mx = 0; for(j = x+ 1; j <= y; j++){ mx = max(mx , b[j]); } if(mx <= y) break; s++; x = y; y= mx; } if(y != n) cout<<-1; else cout<<s; return; } vector<pair<int,int>>v , v1; v.pb({a[k], b[k]}); for(i = 1; i <= n; i++){ if(v.size() == 1 && v[0].fi == 1 && v[0].se == n){ cout<<i<<"\n"; return; } for(auto to :v) for(j = to.fi; j <= to.se; j++) if(a[j] < to.fi || b[j] > to.se) v1.pb({min(a[j] , to.fi) , -max(b[j] , to.se)}); sort(all(v1)); v.clear(); multiset<ll>st , st1; for(auto to : v1){ if(st.size() == 0){ st.insert(-to.se); st1.insert(to.fi); } auto it = st.end(); it--; if(*it < -to.se){ st.insert(-to.se); st1.insert(to.fi); } } while(st.size()){ v.pb({*st1.begin() , *st.begin()}); st.erase(st.begin()); st1.erase(st1.begin()); } if(v.size() == 0) continue; sort(all(v)); v1.clear(); } cout<<-1<<"\n"; } int main(){ TL; /* #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif */ int t = 1; //cin>>t; while(t--) { solve(); } } // Author : حسن

Compilation message (stderr)

passport.cpp: In function 'void solve()':
passport.cpp:47:31: error: no matching function for call to 'max(long long int&, int&)'
   47 |             mx = max(mx , b[j]);
      |                               ^
In file included from /usr/include/c++/10/bits/specfun.h:45,
                 from /usr/include/c++/10/cmath:1927,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from passport.cpp:5:
/usr/include/c++/10/bits/stl_algobase.h:254:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)'
  254 |     max(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:254:5: note:   template argument deduction/substitution failed:
passport.cpp:47:31: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   47 |             mx = max(mx , b[j]);
      |                               ^
In file included from /usr/include/c++/10/bits/specfun.h:45,
                 from /usr/include/c++/10/cmath:1927,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from passport.cpp:5:
/usr/include/c++/10/bits/stl_algobase.h:300:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)'
  300 |     max(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:300:5: note:   template argument deduction/substitution failed:
passport.cpp:47:31: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   47 |             mx = max(mx , b[j]);
      |                               ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from passport.cpp:5:
/usr/include/c++/10/bits/stl_algo.h:3480:5: note: candidate: 'template<class _Tp> constexpr _Tp std::max(std::initializer_list<_Tp>)'
 3480 |     max(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3480:5: note:   template argument deduction/substitution failed:
passport.cpp:47:31: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   47 |             mx = max(mx , b[j]);
      |                               ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from passport.cpp:5:
/usr/include/c++/10/bits/stl_algo.h:3486:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::max(std::initializer_list<_Tp>, _Compare)'
 3486 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3486:5: note:   template argument deduction/substitution failed:
passport.cpp:47:31: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   47 |             mx = max(mx , b[j]);
      |                               ^
passport.cpp:32:20: warning: unused variable 'm' [-Wunused-variable]
   32 |     ll q , i , j , m , n , z , s  = 0, f, l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                    ^
passport.cpp:32:28: warning: unused variable 'z' [-Wunused-variable]
   32 |     ll q , i , j , m , n , z , s  = 0, f, l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                            ^
passport.cpp:32:40: warning: unused variable 'f' [-Wunused-variable]
   32 |     ll q , i , j , m , n , z , s  = 0, f, l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                        ^
passport.cpp:32:43: warning: unused variable 'l' [-Wunused-variable]
   32 |     ll q , i , j , m , n , z , s  = 0, f, l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                           ^
passport.cpp:32:47: warning: unused variable 'r' [-Wunused-variable]
   32 |     ll q , i , j , m , n , z , s  = 0, f, l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                               ^
passport.cpp:32:63: warning: unused variable 'mn' [-Wunused-variable]
   32 |     ll q , i , j , m , n , z , s  = 0, f, l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                                               ^~