비결정적 유한 오토마타
시간 제한1초메모리 제한256 MB
상태가 n개인 0과 1 입력의 NFA를 구성하여, 인식하지 못하는 가장 짧은 문자열의 길이 L(G)를 최대한 크게 만듭니다.
문제
비결정적 유한 오토마타(NFA)는 로 정의한다. 여기서 와 는 두 개의 방향 그래프이고, 는 초기 정점, 는 수락 정점들의 집합이다.
NFA 가 01 문자열 을 인식한다는 것은, 이고 모든 에 대해 간선 이 에 속하며 인 정점 수열 이 존재한다는 뜻이다.
는 길이가 인 문자열 중 가 인식하지 못하는 것이 존재하는 가장 작은 음이 아닌 정수로 정의한다. 그런 이 없으면 로 한다.
정수 이 주어진다. 이고 가 충분히 큰 NFA 를 구성하라. 과 의 정확한 제약은 힌트에 있다.
입력
첫 줄에 정수 이 주어진다.
출력
의 정점은 의 정수로 번호를 매긴다. 먼저 를 출력한다. 첫 줄에는 간선 수 ()를 쓴다. 이어서 개의 줄에 각각 정수 와 ()를 써서 간선 를 나타낸다. 인 자기 루프도 허용된다.
다음으로 같은 형식으로 을 출력한다.
그다음 정수 를 한 줄에 쓰고, 를 뜻하는 정수 를 한 줄에 쓴다.
초기 정점 는 0으로 고정된다.
힌트
이 문제에는 과 인 두 개의 테스트가 있다.
일 때 출력한 NFA의 는 18보다 커야 한다. 일 때는 400보다 커야 한다.