#include int main(int argc, char * argv[]) { char cisla[20]; int mesice[12]={31,28,31,30,31,30,31,31,30,31,30,31}; int g=0; int ok=1; while(1){ int i=0; for (i=0;i<20;i++){ cisla[i] = getc(stdin); if (cisla[i]=='\n') { if (( i>11) || (i<10)){ printf("invalid\n"); ok=0; break; } ok=1; break; } if ((cisla[0]=='e') && (cisla[1]=='n') && (cisla[2]=='d') ) { //printf("end\n"); return 0;} if (cisla[i]=='/') { if ( i!=6) { printf("invalid\n"); ok=0; while(getc(stdin)!='\n'); //break; } ok=1; //break; } } if (!ok) continue; else { int r = ((cisla[0]-'0') * 10 )+(cisla[1]-'0') ; int m = ((cisla[2]-'0') * 10 )+(cisla[3]-'0') ; int d = ((cisla[4]-'0') * 10 )+(cisla[5]-'0') ; if ((r>=20)&&(r<=53)&&(i==11)) { printf("invalid\n"); ok=0; continue; } if (((r>53)||(r<=9))&&(i<11)) { printf("invalid\n"); ok=0; continue; } if (((m >= 1)&& (m<=12))||((m >= 51)&& (m<=62))){ //platne mesice int rr; mesice[1]=28; if (r<20) rr=r+2000; else rr=r+1900; if ((rr%4==0)&& !(rr%100==0)) { mesice[1]=29; } else if (rr%400==0) {mesice[1]=29;} g=0; if (m>50) {m-=50; g=1; } if ((d > mesice[m-1])||(d==0)){ printf("invalid\n"); ok=0; continue; } int rod=0; if ((r>9)&&(r<20)){ printf("invalid\n"); ok=0; continue; } if ((r>20)&&(r<54)){ if(g) printf("girl\n"); else printf("boy\n"); continue; /* rod=((cisla[0]-cisla[1]+cisla[2]-cisla[3]+cisla[4]-cisla[5]+cisla[7]-cisla[8]+cisla[9]))-'0'; printf("%d- ",rod); if (rod%11==0){ printf("%d- ",rod); if(g) printf("girl\n"); else printf("boy\n"); }else { printf("invalid\n"); ok=0; continue; } */ }else{ rod=((cisla[0]-cisla[1]+cisla[2]-cisla[3]+cisla[4]-cisla[5]+cisla[7]-cisla[8]+cisla[9]-cisla[10])); //printf("%d- ",rod); if (rod%11==0){ //printf("%d- ",rod); if(g) printf("girl\n"); else printf("boy\n"); continue; }else { printf("invalid\n"); ok=0; continue; } } }else{ // spatne mesice printf("invalid\n"); ok=0; continue; } } //for (int i=0;i<12;i++){printf("%c ",cisla[i]);} } return 0; }