/* ID: zhangzz4 PROG: clocks LANG: C++ */ #include<stdio.h> #include<string.h> const int N=9; char effect[N+1][N+1]= { "110110000", "111000000", "011011000", "100100100", "010111010", "001001001", "000110110", "000000111", "000011011" }; int d[N]; int ans=N*N,res[N]; void deal(int *way) { int sum=0; for(int i=0;i<N;i++) sum+=way[i+1]; if(sum>ans) return ; if(sum<ans) { ans=sum; for(int i=0;i<N;i++) res[i]=way[i+1]; return ; } int i; for(i=0;i<N;i++) if(res[i]>way[i+1]) return ; else if(res[i]<way[i+1])break; for(int i=0;i<N;i++) res[i]=way[i+1]; } int main() { freopen("clocks.in","r",stdin); freopen("clocks.out","w",stdout); for(int k=0;k<N;k++) { scanf("%d",&d[k]); d[k]/=3; } int i[N+1]; for(i[1]=0;i[1]<4;i[1]++) for(i[2]=0;i[2]<4;i[2]++) for(i[3]=0;i[3]<4;i[3]++) for(i[4]=0;i[4]<4;i[4]++) for(i[5]=0;i[5]<4;i[5]++) for(i[6]=0;i[6]<4;i[6]++) for(i[7]=0;i[7]<4;i[7]++) for(i[8]=0;i[8]<4;i[8]++) for(i[9]=0;i[9]<4;i[9]++) { int flag=1; for(int j=0;j<N;j++) { int temp=d[j]; for(int k=0;k<9;k++) temp+=(effect[k][j]-'0')*i[k+1]; temp%=4; //printf("%d ",temp); if(temp) flag=0; } //printf("/n"); if(flag) deal(i); } int fir=0; for(int j=0;j<N;j++) { while(res[j]--) { if(fir) putchar(' '); fir=1; printf("%d",j+1); } } puts(""); //scanf("%'d"); }