#include int main(void) { int r, c, ch, ships, lastch; int JeNad, JeVlevo, JeCislo; int p[1001]; scanf("%d %d",&r, &c); while ((r!=0) && (c!=0)) { getchar(); // printf("r=%d c=%d",r,c); ships = 0; for (int row=0; row=0) { if (ch=='#') { JeNad = ((row>0) && (p[i]=='#')); JeVlevo = ((i>1) && (lastch=='#')); if ((!JeNad) && (!JeVlevo)) { ships++; //printf("lod: row=%d i=%d Nad=%d Vlevo=%d Cislo=%d\n",row,i,JeNad,JeVlevo,JeCislo); } JeCislo = 0; if (JeNad) JeCislo++; if (JeVlevo) JeCislo++; if ((i>1)&&(row>0)&&(p[i-1]=='#')) JeCislo++; if (JeCislo==2) { ships = -1; //printf("giveup: row=%d i=%d Nad=%d Vlevo=%d Cislo=%d\n",row,i,JeNad,JeVlevo,JeCislo); } } if (i>1) { p[i-1]=lastch; } } // ships >= 0 } // i ... c p[c] = ch; getchar(); } // row ... r if (ships>=0) { printf("There are %d ships.\n", ships); } else { printf("Bad placement.\n"); } scanf("%d %d",&r, &c); } // while return 0; }