#include #include #include #include #include #define MAXTAM 40 #define MAXN 20 using namespace std; map ,int > mapa; int n[2]; char v[2][MAXN][MAXTAM+1]; int vai(char s1[], char s2[], int p) { int i, j; if (strcmp(s1,s2) == 0) return 1; for (i=0; s1[i] && s2[i] && s1[i]==s2[i]; i++); if (s1[i] && s2[i]) // diferentes no i-esimo caracter return 0; if (!s2[i]) // s2 substring de s1 { if (mapa.find(make_pair((string)&s1[i], 0))==mapa.end()) { mapa[make_pair((string)&s1[i], 0)] = 1; for (j=0; j