#include<bits/stdc++.h>
using namespace std;
const int N=101,mod=1e9+7;
double val[N][N];int n=100;
int ans;int cho[N];
inline void maker(){
cout<<100<<endl;
for(int i=1;i<=n;++i){
if(!cho[i]){
cout<<1<<" ";
}else{
cout<<cho[i]<<" ";
}
}
}
inline void dfs(int now,double pas,int tot){
if(tot+(100-now+1)<=ans){
return;
}
if(now==101||val[100][now]<=pas){
if(tot==48){
maker();
exit(0);
}
ans=max(ans,tot);
return;
}
for(int i=1;i<=n;++i){//选最小的即可
if(val[i][now]>pas){
cho[now]=i;
dfs(now+1,val[i][now],tot+1);
break;
}
}
dfs(now+1,pas,tot);
}
int main(){
// freopen("in.in","w",stdout);
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j){
val[i][j]=log(i)/j;
}
}
dfs(50,0,1);
return 0;
}