Advertisement
Josif_tepe

Untitled

Mar 18th, 2022
986
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.77 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4.     int n, k;
  5.     cin >> n >> k;
  6.     int a[200005];
  7.     int s = 0;
  8.     for(int i = 0; i < n; i++) {
  9.         cin >> a[i];
  10.         a[i] = 1 - a[i];
  11.     }
  12.     int j = 0, ret = 0, si, ei;
  13.     for(int i = 0; i < n; i++) {
  14.         while(j < n and s + a[j] <= k) {
  15.             if(ret < j - i + 1) {
  16.                 ret = j - i + 1;
  17.                 si = i; // od koga pocnuva podnizata
  18.                 ei = j; // kade zavrsuva
  19.             }
  20.             s += a[j];
  21.             j++;
  22.         }
  23.         s -= a[i];
  24.     }
  25.     cout << ret << endl;
  26.     for(int i = si; i <= ei; i++) {
  27.         if(a[i] == 1) {
  28.             cout << i + 1 << " ";
  29.         }
  30.     }
  31.     return 0;
  32. }
  33. // 1 2 3 4 5
  34. // a --> b imame tocno b - a + 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement