fork download
  1. #include <iostream>
  2. #include<bits/stdc++.h>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7. // your code goes here
  8. int n,k;
  9. string a;
  10. cin>>n>>k;
  11. cin>>a;
  12. vector<int> prefix(n+1,0);
  13. vector<int> suffix(n+1,0);
  14. for(int i=1;i<=n;i++){
  15. if(a[i-1]=='1'){
  16. prefix[i]=prefix[i-1]+1;
  17. }
  18. else{
  19. prefix[i]=0;
  20. }
  21. }
  22. for(int i=n-1;i>=0;i--){
  23. if(a[i]=='1'){
  24. suffix[i]=suffix[i+1]+1;
  25. }
  26. else{
  27. suffix[i]=0;
  28. }
  29. }
  30.  
  31. int i=0;
  32. int j=k;
  33. int ans=0;
  34.  
  35.  
  36. while(i<n && j<n){
  37. int consecutive = prefix[i]+suffix[j]+k;
  38. ans = max(ans,consecutive);
  39. i++;
  40. j++;
  41. }
  42. cout<<ans<<endl;
  43.  
  44. return 0;
  45. }
Success #stdin #stdout 0.01s 5304KB
stdin
5 2
10011
stdout
5