E D R , A S I H C RSS

Immediate Decodability


About ImmediateDecodability

기호의 코드가 다른 기호의 앞부분에 존재하지 않으면, 기호의 집합을 암호화하는 것은 직접 해독 가능하다. 모든 코드는 이진 코드이고, 한 코드 집합에서는 동일한 코드가 존재하지 않으며, 각 코드는 적어도 1개 이상의 비트와 10개 이하의 코드를 갖는다. 각 집합은 적어도 2개 이상, 8개 이하의 코드를 갖는다.

기호 {A,B,C,D}를 갖는 알파벳이 있다고 가정하자.

다음 코드는 직접 해독 가능성이 존재한다.
A:01 B:10 C:0010 D:0000
그러나 다음 코드는 그렇지 않다.
A:01 B:10 C:010 D:0000 (A가 C의 앞부분에 존재한다)

Input

파일에서 연속된 데이터를 그룹 형태로 입력을 받아들인다. 그룹의 각 데이터는 기호용 이진 코드를 나타내는 0과 1의 집합으로 구성된다. 각 그룹은 단일 숫자 9로 구분된다. 구분 숫자인 9는 그룹에 속하지 않는다.

각 그룹은 다른 그룹과 따로 처리해야 한다. 한 그룹의 코드가 다른 그룹의 코드와는 연관해서 처리하지 않는다. 즉, 각 그룹은 따로따로 처리해야 한다.

Output

각 그룹에서 프로그램은 그룹의 코드들이 직접 해독 가능성이 있는지를 결정하고, 주어진 그룹 번호와 그룹의 직접 해독 가능성 여부를 한 줄씩 출력한다.

입력 예제는 위의 예로 설명되었다.

Sample Input

~cpp 
01
10
0010
0000
9
01
10
010
0000
9

Sample Output

~cpp 
Set 1 is immediately decodable
Set 2 is not immediately decodable

풀이

작성자 사용언어 개발시간 코드
문보창 C++ ? ImmediateDecodability/문보창
회영 C++ ? ImmediateDecodability/김회영

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2014-01-02 08:24:08
Processing time 0.0129 sec