#include <bits/stdc++.h>
using namespace std;
vector<int> ans;
int b;
queue<pair<int, int> > qu;
void OUT() {
  if (ans.size() == 201) ans.pop_back();
  printf("%d\n", ans.size());
  for (int i = 0; i < ans.size(); i++) printf("%d ", ans[i]);
}
int solve(int last, int i) {
  if (last == 0) return 0;
  qu.push(pair<int, int>(last, i));
  return (last + b - 1) / b;
}
int main() {
  int n, a, k, cnt = 0, last2 = 0;
  string s;
  scanf("%d %d %d %d", &n, &a, &b, &k);
  cin >> s;
  s += '1';
  int last = 0;
  string tmp = s;
  for (int i = 0; i < s.size(); i++) {
    if (s[i] == '1') {
      for (last = max(last, i - b + 1); last <= i; last++) tmp[last] = '1';
    }
  }
  s = tmp;
  last = 0;
  for (int i = 0; i < s.size(); i++) {
    if (s[i] == '1')
      cnt += solve(last, i), last = 0;
    else
      last++;
  }
  while (cnt >= a) {
    ans.push_back(qu.front().second);
    cnt--;
    if (qu.front().first > b)
      qu.front().second -= b, qu.front().first -= b;
    else
      qu.pop();
  }
  OUT();
}
