/ SeriousOJ /

Record Detail

Compile Error

foo.cc: In function 'void solve(long long int)':
foo.cc:29:12: error: no matching function for call to 'min(long long int&, long long unsigned int)'
   29 |     k = min(k, v.size()*1LL);
      |         ~~~^~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:60,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:51,
                 from foo.cc:1:
/usr/include/c++/13/bits/stl_algobase.h:233:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
  233 |     min(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/13/bits/stl_algobase.h:233:5: note:   template argument deduction/substitution failed:
foo.cc:29:12: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int')
   29 |     k = min(k, v.size()*1LL);
      |         ~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algobase.h:281:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
  281 |     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/13/bits/stl_algobase.h:281:5: note:   template argument deduction/substitution failed:
foo.cc:29:12: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'long long unsigned int')
   29 |     k = min(k, v.size()*1LL);
      |         ~~~^~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:61:
/usr/include/c++/13/bits/stl_algo.h:5775:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(initializer_list<_Tp>)'
 5775 |     min(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/13/bits/stl_algo.h:5775:5: note:   template argument deduction/substitution failed:
foo.cc:29:12: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   29 |     k = min(k, v.size()*1LL);
      |         ~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h:5785:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(initializer_list<_Tp>, _Compare)'
 5785 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/13/bits/stl_algo.h:5785:5: note:   template argument deduction/substitution failed:
foo.cc:29:12: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   29 |     k = min(k, v.size()*1LL);
      |         ~~~^~~~~~~~~~~~~~~~~

Code

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define all(v) v.begin(),v.end()
#define endl '\n'
#pragma GCC target("popcnt")
#define bug(...) __f (#__VA_ARGS__, __VA_ARGS__);
template <typename Arg1>void __f (const char* name, Arg1&& arg1) {cout << name << " : " << arg1 << endl;}template <typename Arg1, typename... Args>void __f (const char* names, Arg1&& arg1, Args&&... args){const char* comma = strchr (names + 1, ',');cout.write (names, comma - names) << " : " << arg1 << " | "; __f (comma + 1, args...);}

void solve(ll cs) {
    ll n, k;
    cin >> n >> k;
    string s;
    cin >> s;
    vector<ll> v;
    ll cnt=0;
    for(ll i=0; i<n; i++){
        if(s[i]=='1') cnt++;
        else{
            if(cnt) v.push_back(cnt);
            cnt = 0;        
        } 
    }
    if(cnt) v.push_back(cnt);
    sort(v.rbegin(), v.rend());    
    //for(auto u:v) cout << u << " ";
     
    //bug(v.size(), k)
    k = min(k, v.size()*1LL);
    ll ans = 0;
    for(int i=0; i<=k; i++) ans += v[i];

    cout << ans << endl;
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0), cout.tie(0);
  
    ll t=1, cs=1;
    cin>>t;
    while(t--) {
        solve(cs++);
    }

    return 0;
}

Information

Submit By
Type
Submission
Problem
P1159 Binary String
Contest
Brain Booster #8
Language
C++17 (G++ 13.2.0)
Submit At
2025-02-17 14:46:47
Judged At
2025-02-17 14:46:47
Judged By
Score
0
Total Time
0ms
Peak Memory
0 Bytes