c
(char*a
,char*b
){return*a
-*b
;}a
(char*s
,char*t
){int l
=strlen(s
),m
=strlen(t
);if(m
=l
==m
)for(qsort(s
,l
,1,c
),qsort(t
,l
,1,c
);l
--&&abs(s
[l
]-t
[l
])<2;);return!-~l
*m
;}
int main() {
char aa[] = "A", A[] = "A";
char b[] = "A", B[] = "B";
char cc[] = "C", C[] = "B";
char d[] = "DD", D[] = "CE";
char e[] = "DE", E[] = "FC";
char f[] = "ABCD", F[] = "BCDE";
char g[] = "AACC", G[] = "DBBB";
char hh[] = "DJENSKE", H[] = "FDJCLMT";
char i[] = "DEFGHIJKL", I[] = "HJLEHMCHE";
char j[] = "IKLIJJLIJKKL", J[] = "LJLJLJLJLJHI";
char k[] = "ACEGIKMOQSUWY", K[] = "BLNPRDFTVHXJZ";
char l[] = "QQSQQRRQSTTUQQRRRS", L[] = "PQTTPPTTQTPQPPQRTP";
char m[] = "ELKNSDUUUELSKJFESD", M[] = "DKJELKNSUELSDUFEUS";
char n[] = "A", N[] = "C";
char o[] = "A", O[] = "Z";
char p[] = "B", P[] = "J";
char q[] = "JK", Q[] = "J";
char rr[] = "CC", R[] = "BA";
char s[] = "CE", S[] = "D";
char t[] = "DJENSKE", T[] = "GDJCLMT";
char u[] = "DEFGHIJKL", U[] = "HJLHMCHE";
char v[] = "IJKLIJKLKIJL", V[] = "LIJLLHJLJLLL";
char w[] = "AWSUKMEGICOQY", W[] = "RSHXBLJLNQDFZ";
char x[] = "QQSQQRRQSTTUQQQRRS", X[] = "PQTTPPTTQTPQPPQRTT";
char y[] = "ELKNSDUVWELSKJFESD", Y[] = "DKJELKNSUELSDUFEUS";
char *z[] = {aa,b,cc,d,e,f,g,hh,i,j,k,l,m,n,o,p,q,rr,s,t,u,v,w,x,y};
char *Z[] = {A ,B,C ,D,E,F,G,H ,I,J,K,L,M,N,O,P,Q,R ,S,T,U,V,W,X,Y};
for(int _=0;_<25;_++) {
printf("%s %s: %s\r\n", z
[_
], Z
[_
], a
(z
[_
], Z
[_
]) ? "true" : "false"); }
return 0;
}
YyhjaGFyKmEsY2hhcipiKXtyZXR1cm4qYS0qYjt9YShjaGFyKnMsY2hhcip0KXtpbnQgbD1zdHJsZW4ocyksbT1zdHJsZW4odCk7aWYobT1sPT1tKWZvcihxc29ydChzLGwsMSxjKSxxc29ydCh0LGwsMSxjKTtsLS0mJmFicyhzW2xdLXRbbF0pPDI7KTtyZXR1cm4hLX5sKm07fQoKaW50IG1haW4oKSB7CiAgY2hhciBhYVtdID0gIkEiLCBBW10gPSAiQSI7CiAgY2hhciBiW10gPSAiQSIsIEJbXSA9ICJCIjsKICBjaGFyIGNjW10gPSAiQyIsIENbXSA9ICJCIjsKICBjaGFyIGRbXSA9ICJERCIsIERbXSA9ICJDRSI7CiAgY2hhciBlW10gPSAiREUiLCBFW10gPSAiRkMiOwogIGNoYXIgZltdID0gIkFCQ0QiLCBGW10gPSAiQkNERSI7CiAgY2hhciBnW10gPSAiQUFDQyIsIEdbXSA9ICJEQkJCIjsKICBjaGFyIGhoW10gPSAiREpFTlNLRSIsIEhbXSA9ICJGREpDTE1UIjsKICBjaGFyIGlbXSA9ICJERUZHSElKS0wiLCBJW10gPSAiSEpMRUhNQ0hFIjsKICBjaGFyIGpbXSA9ICJJS0xJSkpMSUpLS0wiLCBKW10gPSAiTEpMSkxKTEpMSkhJIjsKICBjaGFyIGtbXSA9ICJBQ0VHSUtNT1FTVVdZIiwgS1tdID0gIkJMTlBSREZUVkhYSloiOwogIGNoYXIgbFtdID0gIlFRU1FRUlJRU1RUVVFRUlJSUyIsIExbXSA9ICJQUVRUUFBUVFFUUFFQUFFSVFAiOwogIGNoYXIgbVtdID0gIkVMS05TRFVVVUVMU0tKRkVTRCIsIE1bXSA9ICJES0pFTEtOU1VFTFNEVUZFVVMiOwogIGNoYXIgbltdID0gIkEiLCBOW10gPSAiQyI7CiAgY2hhciBvW10gPSAiQSIsIE9bXSA9ICJaIjsKICBjaGFyIHBbXSA9ICJCIiwgUFtdID0gIkoiOwogIGNoYXIgcVtdID0gIkpLIiwgUVtdID0gIkoiOwogIGNoYXIgcnJbXSA9ICJDQyIsIFJbXSA9ICJCQSI7CiAgY2hhciBzW10gPSAiQ0UiLCBTW10gPSAiRCI7CiAgY2hhciB0W10gPSAiREpFTlNLRSIsIFRbXSA9ICJHREpDTE1UIjsKICBjaGFyIHVbXSA9ICJERUZHSElKS0wiLCBVW10gPSAiSEpMSE1DSEUiOwogIGNoYXIgdltdID0gIklKS0xJSktMS0lKTCIsIFZbXSA9ICJMSUpMTEhKTEpMTEwiOwogIGNoYXIgd1tdID0gIkFXU1VLTUVHSUNPUVkiLCBXW10gPSAiUlNIWEJMSkxOUURGWiI7CiAgY2hhciB4W10gPSAiUVFTUVFSUlFTVFRVUVFRUlJTIiwgWFtdID0gIlBRVFRQUFRUUVRQUVBQUVJUVCI7CiAgY2hhciB5W10gPSAiRUxLTlNEVVZXRUxTS0pGRVNEIiwgWVtdID0gIkRLSkVMS05TVUVMU0RVRkVVUyI7CiAgY2hhciAqeltdID0ge2FhLGIsY2MsZCxlLGYsZyxoaCxpLGosayxsLG0sbixvLHAscSxycixzLHQsdSx2LHcseCx5fTsKICBjaGFyICpaW10gPSB7QSAsQixDICxELEUsRixHLEggLEksSixLLEwsTSxOLE8sUCxRLFIgLFMsVCxVLFYsVyxYLFl9OwoKICBmb3IoaW50IF89MDtfPDI1O18rKykgewogICAgcHJpbnRmKCIlcyAlczogJXNcclxuIiwgeltfXSwgWltfXSwgYSh6W19dLCBaW19dKSA/ICJ0cnVlIiA6ICJmYWxzZSIpOwogIH0KCiAgcmV0dXJuIDA7Cn0=