644

#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
#include <map>
#include <vector>


using namespace std;
map<string, bool> list;
vector<string> vec;
char s[100];


int main()
{


    int cnt = 1;
    bool flag = false;
    list.clear();
    while(~scanf("%s",s))
    {


        if(s[0] == '9')
        {
            flag = false;
            sort(vec.begin(),vec.end());


            for( int i = 0; i< vec.size(); i++)
            {


                string str;
                for( int j = 0; vec[i][j] != '\0'; j++)
                {
                    str += vec[i][j];
                    if(list[str])
                    {
                        flag = true;
                        goto L;
                    }
                }
                    list[vec[i]] = true;


            }
        L:
            if(!flag)
                printf("Set %d is immediately decodable\n",cnt++);
            else
                printf("Set %d is not immediately decodable\n",cnt++);


            list.clear();
            vec.clear();
            continue;
        }


        vec.push_back(s);


    }


}

版权声明:本文为u013570474原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。