#include #include int T[600][600]; int w,h,P[6]; void DotFill(int l, int i, int j) { if (i<0) return; if (j<0) return; if (i>=h) return; if (j>=w) return; if (T[i][j]!=3) return; T[i][j]=l; DotFill(1,i-1,j);DotFill(1,i+1,j);DotFill(1,i,j-1);DotFill(1,i,j+1); } int Fill(int i, int j) { int q; if (i<0) return 0; if (j<0) return 0; if (i>=h) return 0; if (j>=w) return 0; if (T[i][j]<=0) return 0; T[i][j]=-T[i][j]; if (T[i][j]==-2) q=1; else q=0; // printf("%d %d %d\n",i,j,T[i][j]); return q+ Fill(i-1,j)+Fill(i+1,j)+Fill(i,j-1)+Fill(i,j+1); } int main() { int i,j,k; char s[10000]; while(1) { scanf("%d %d ",&h,&w); if ((w==0)&&(h==0)) break; for (i=0;i0) { k=Fill(i,j); if ((k>0)&&(k<=6)) P[k-1]++; } printf("Throw:"); for (i=0;i<6;) if (P[i]) { printf(" %d",i+1); P[i]--; } else i++; printf("\n"); } return 0; }