#include <bits/stdc++.h>
using namespace std;
const int MAX = 2e5 + 5;
int n, a, b, k, p[MAX];
char s[MAX];
struct Node {
  int l, r, cnt;
} c[MAX];
int main() {
  int tot = 0;
  scanf("%d%d%d%d", &n, &a, &b, &k);
  scanf(" %s", s);
  int sum = 0;
  for (int i = 0; i < n; i++) {
    if (s[i] == '0') {
      int j = i;
      while (j < n - 1 && s[j + 1] == '0') j++;
      c[tot].l = i, c[tot].r = j, c[tot].cnt = (j - i + 1) / b;
      tot++;
      sum += (j - i + 1) / b;
      i = j;
    }
  }
  sum -= a - 1;
  int ans = 0;
  for (int i = 0; i < tot; i++) {
    if (sum == 0) break;
    while (c[i].cnt > 0) {
      p[ans++] = c[i].l + b - 1;
      c[i].l += b;
      c[i].cnt--;
      sum--;
      if (sum == 0) break;
    }
  }
  printf("%d\n", ans);
  for (int i = 0; i < ans; i++) printf("%d ", p[i] + 1);
  return 0;
}
