#include <bits/stdc++.h>
using namespace std;
const int inf = int(1e9);
const double eps = 0.0000000001, pi = 3.14159265358979323;
const int maxn = int(2e5 + 100);
char s[maxn];
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int n, a, b, k, cnt = 0, can = 0;
  vector<int> pos, res;
  vector<pair<int, pair<int, int> > > val;
  cin >> n >> a >> b >> k;
  for (int i = 1; i <= n; ++i) cin >> s[i];
  pos.push_back(0);
  for (int i = 1; i <= n; ++i) {
    if (s[i] == '1') pos.push_back(i);
  }
  pos.push_back(n + 1);
  for (int i = 1; i < int(pos.size()); ++i) {
    can += (pos[i] - pos[i - 1] - 1) / b;
    val.push_back({(pos[i] - pos[i - 1]) / b, {pos[i - 1], pos[i]}});
  }
  sort((val).begin(), (val).end());
  can -= a;
  for (int i = 0; i < int(val.size()); ++i) {
    int l = val[i].second.first, r = val[i].second.second;
    for (int j = l + b; j < r; j += b) {
      res.push_back(j);
      can--;
      if (can < 0) {
        break;
      }
    }
    if (can < 0) {
      break;
    }
  }
  cout << int(res.size()) << endl;
  for (auto i : res) cout << i << " ";
  return 0;
}
