#include #include void normalize (char *s) { int i, j; for (i = strlen(s) -1; i >= 0; i--) { if (s[i] == ' ' && (i == 0 || i == strlen(s) -1 || strchr(" ()[]{}.,;:", s[i-1]) != NULL || strchr(" ()[]{}.,;:", s[i+1]) != NULL)) { for (j = i+1; j < strlen(s); j++) s[j-1] = s[j]; s[strlen(s)-1] = 0; } else if (strchr("([{", s[i]) != NULL) s[i] = '('; else if (strchr(")]}", s[i]) != NULL) s[i] = ')'; else if (strchr(",;", s[i]) != NULL) s[i] = ','; else if ('a' <= s[i] && s[i] <= 'z') s[i] = s[i] - 'a' + 'A'; } } int main (void) { int K, k; char s1[1002], s2[1002]; FILE *in = fopen ("format.in", "r"); fscanf (in, "%d\n", &K); for (k = 1; k <= K; k ++) { fgets (s1, 1001, in); fgets (s2, 1001, in); s1[strlen(s1)-1] = 0; s2[strlen(s2)-1] = 0; normalize (s1); normalize (s2); if (strcmp(s1, s2) != 0) printf ("Data Set %d: not equal\n", k); else printf ("Data Set %d: equal\n", k); if (k < K) printf ("\n"); } fclose (in); return 0; }