#include #include #include #include #include #define FOR(a,b,c) for(int a=b;a<=c;a++) #define REP(a,c) for(int a=0;a=c;a--) #define WT while(1) #define GETI(a) scanf("%d", &a) #define BZ(a) memset(a,0,sizeof(a)) #define FILL(a,b) fill(a,a+(sizeof(a)/sizeof(a[0])),b) #define FOREACH(a,b) for(__typeof((b).begin()) a=(b).begin(); a!=(b).end();a++) #define D(args...) printf(args) using namespace std; int r, c; char mapa[100][100]; int val[100][100]; const int dx[] = { 0, -1, 1, 0 , 0}; const int dy[] = { 0, 0, 0,-1, 1}; int main() { while(1) { scanf("%d%d", &r, &c) ; if(r==0 && c==0) break; REP(i,r) REP(j, c) scanf(" %c", &mapa[i][j]); int best = r*c+100; REP(s, (1<= best) goto nast; int j= 0; REP(k, 5) if(i+dx[k]>=0 && i+dx[k]=0 && j+dy[k]= best) goto nast; REP(k, 5) if(i+dx[k]>=0 && i+dx[k]=0 && j+dy[k] r*c) puts("Damaged billboard."); else printf("You have to tap %d tiles.\n", best); } return 0; }