原题链接:
https://vjudge.net/problem/UVA-644
AC代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a[26];
int t = 0;
int flag = 0;
int cases = 1;
while (getline(cin, a[t]))
{
if (a[t][0] == '9')
{
for (int i = 0; i < t; i++)
{
for (int j = 0; j < t; j++)
{
if (i == j)
continue;
int len = min(a[i].length(), a[j].length());
int cnt = 0;
for (int k = 0; k < len; k++)
{
if (a[i][k] == a[j][k])
{
cnt++;
}
else
break;
}
if (cnt == len)
{
flag = 1;
}
}
}
if (flag)
cout << "Set " << cases << " is not immediately decodable" << endl;
else
cout << "Set " << cases << " is immediately decodable" << endl;
cases++;
t = 0;
flag = 0;
}
else
t++;
}
return 0;
}
直接暴力