#include<iostream>
#include<vector>
using namespace std;
int n,a,b,ans=(1<<30);
int h[15];
vector<int> tmp,vec;
inline void dfs(int d,int sum) {
if(sum>=ans) return;
if(d==n) {
if(h[n]<0) ans=sum,vec=tmp;
return;
}
for(int i=0;i<=max(h[d-1]/b,max(h[d]/a,h[d+1]/b))+1;++i) {
if(h[d-1]-b*i<0) {
h[d-1]-=b*i;
h[d]-=a*i;
h[d+1]-=b*i;
for(int j=1;j<=i;++j) tmp.push_back(d);
dfs(d+1,sum+i);
h[d-1]+=b*i;
h[d]+=a*i;
h[d+1]+=b*i;
for(int j=1;j<=i;++j) tmp.pop_back();
}
}
}
int main() {
cin>>n>>a>>b;
for(int i=1;i<=n;++i) cin>>h[i];
dfs(2,0);
cout<<ans<<endl;
for(int i=0;i<vec.size();++i) cout<<vec[i]<<" ";
return 0;
}