#include #include int main (void) { int K, k; int n, m, i, j, r; char id[51][6][80], md[6][80]; char f, match; FILE *in = fopen ("infosessions.in", "r"), *out = fopen("infosessions.out", "w"); fscanf (in, "%d\n", &K); for (k = 1; k <= K; k ++) { fprintf (out, "Data Set %d:\n", k); fscanf (in, "%d %d\n", &n, &m); for (i = 1; i <= n; i ++) for (j = 1; j <= 5; j ++) { fgets (id[i][j], 81, in); id[i][j][strlen(id[i][j])-1] = 0; } for (i = 1; i <= m; i ++) { for (j = 1; j <= 5; j ++) { fgets (md[j], 81, in); md[j][strlen(md[j])-1] = 0; } match = 0; for (r = 1; r <= n; r ++) { f = 1; for (j = 1; j <= 5; j ++) if (strcmp (md[j], "unknown") != 0 && strcmp(md[j], id[r][j]) != 0) f = 0; if (f) { if (match) fprintf (out, " %d", r); else fprintf (out, "%d", r); match = 1; } } if (match) fprintf (out, "\n"); else fprintf (out, "no match\n"); } fprintf (out, "\n"); } fclose (in); fclose (out); return 0; }