/ SeriousOJ /

Record Detail

Wrong Answer


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 532.0 KiB
#2 Wrong Answer 6ms 576.0 KiB
#3 Wrong Answer 21ms 576.0 KiB

Code

#include <bits/stdc++.h>
#include <cmath>
#include <bitset>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
typedef tree<int, null_type, less_equal<int>, rb_tree_tag, tree_order_statistics_node_update> pbds;
#define ll long long int
#define lld long double
#define yes cout << "Yes" << endl
#define no cout << "No" << endl
#define gcd(a, b) __gcd(a, b)
#define lcm(a, b) ((a * b) / gcd(a, b))
#define pi acos(-1.00)
void evan(int t)
{
  ll n;cin>>n;
  ll k;cin>>k;
  string s;
  cin>>s;
  vector<ll>v;
  ll cnt=0;
  for(int i=0;i<n;i++){
     if(s[i]=='1'){
      cnt++;
     }
     else{
      if(cnt!=0)v.push_back(cnt);
      cnt=0;
     }
  }
  if(cnt!=0)v.push_back(cnt);
  n=v.size();
  int i=0;
  ll maxx=-1;
  ll temp=0;
  while(1){
      if(i==k+1||i==n)break;
      temp+=v[i];
      i++;
  }
  if(i==n){
    cout<<temp<<"\n";return;
  }
  maxx=temp;
   cnt=0;
  while(1){
    if(i==n)break;
     temp-=v[cnt];
     temp+=v[i];
     maxx=max(temp,maxx);
     i++;
     cnt++;
  }
  cout<<maxx<<"\n";
}
signed main()
{
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(nullptr);
  int t = 1;
  cin >> t;
  for (int i = 1; i <= t; i++)
  {
    evan(i);
  }
}

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 15:26:03
Judged At
2025-02-17 15:26:03
Judged By
Score
0
Total Time
21ms
Peak Memory
576.0 KiB