UVA - 644 Immediate Decodability
题目大意:给出几个字符串,判断互相之间是否是前缀。
解题思路:每个串对比一下即可
/*UVA - 644 Immediate Decodability */
#include <cstdio>
#include <cstring>
int main() {
char a[10000][100];
bool flag;
int t = 0;
int tt = 0;
while (gets(a[0])) {
for (int i = 1; a[i-1][0] != '9'; i++) {
gets(a[i]);
t = i + 1;
}
tt++;
/* for (int i = 0; i < t; i++) {
printf ("%s\n", a[i]);
}*/
for (int i = 0; i < t - 1; i++) {
flag = 0;
for (int j = 0; j < t - 1; j++) {
for (int k = 0; k < strlen (a[i]); k++) {
if ( a[i][k] == a[j][k] && i != j)
flag = 0;
else {
flag = 1;
break;
}
}
if (!flag) break;
}
if (!flag) break;
}
if (flag)
printf("Set %d is immediately decodable\n", tt);
else
printf("Set %d is not immediately decodable\n", tt);
}
}