#include <bits/stdc++.h>
using namespace std;
int n, h[20] = {0}, tmp[20] = {0}, ans[20] = {0}, a, b, MIN = -1;
void f(int, int);
int main() {
  int i, j, k;
  cin >> n >> a >> b;
  for (i = 0; i < n; i++) cin >> h[i];
  f(1, 0);
  cout << MIN << endl;
  for (i = 0; i < n; i++)
    for (j = 0; j < ans[i]; j++) cout << i + 1 << " ";
  cout << endl;
  return 0;
}
void f(int ind, int s) {
  if (ind == n - 1) {
    if (h[ind - 1] == 0) return;
    int t = 0;
    if (h[ind] >= 0) t = h[ind] / b + 1;
    tmp[ind - 1] += t;
    if (s + t < MIN || MIN == -1) {
      MIN = s + t;
      memcpy(ans, tmp, sizeof tmp);
    }
    tmp[ind - 1] -= t;
    return;
  }
  if (h[ind - 1] >= 0) {
    int t = h[ind - 1] / b + 1;
    h[ind - 1] -= t * b;
    h[ind] -= t * a;
    h[ind + 1] -= t * b;
    tmp[ind] += t;
    f(ind, s + t);
    h[ind - 1] += t * b;
    h[ind] += t * a;
    h[ind + 1] += t * b;
    tmp[ind] -= t;
  } else {
    f(ind + 1, s);
    if (h[ind] >= 0) {
      h[ind] -= a;
      h[ind + 1] -= b;
      tmp[ind]++;
      f(ind, s + 1);
      h[ind] += a;
      h[ind + 1] += b;
      tmp[ind]--;
    }
  }
}
