로봇 추적
시간 제한1초메모리 제한128 MB
영역 인접 관계와 섞인 위치 기록이 주어질 때 1번 영역에서 출발한 로봇들의 이동으로 설명되는 최소와 최대 로봇 수를 구합니다.
- 난이도
어려움10점 중 8점
- 유형
- 그래프
- 정답자
- 아직 제출이 없습니다
문제
여러 대의 로봇이 한 구역 안을 돌아다니면서 자기 위치를 서버로 보낸다. 서버는 로봇이 보낸 위치의 흐름만 받아 보고, 구역 안에 로봇이 몇 대 있는지 알아내야 한다.
구역은 닫힌 다각형이고, 서로 겹치지 않는 영역 으로 나뉘어 있다. 모든 로봇은 처음에 영역 에 있다가 움직이기 시작한다. 로봇은 지금 있는 영역과 인접한 영역으로만 이동하고, 새 영역에 들어갈 때마다 그 영역의 번호를 서버로 보낸다. 한 로봇이 같은 영역을 여러 번 드나들어도 된다.
서버는 영역 번호가 길게 이어진 스트림 하나를 받는다. 각 번호를 어느 로봇이 보냈는지는 알 수 없다.

모든 로봇이 영역 번호를 적어도 한 번은 보냈다고 하자. 이런 스트림을 만들어 낼 수 있는 로봇 수의 최솟값과 최댓값을 구하라.
입력
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 영역의 수 ()과 서버가 받은 스트림의 길이 ()이 주어진다. 이어지는 개의 줄 중 번째 줄은 영역 를 설명한다. 각 줄은 영역 와 인접한 영역의 수 로 시작하고, 그 뒤에 인접한 영역의 번호가 개 온다. 그다음 줄에는 서버가 받은 순서 그대로 영역 번호 개가 주어진다. 입력은 0 0만 있는 줄로 끝난다.
주어지는 스트림은 항상 어떤 로봇 무리가 실제로 만들어 낼 수 있는 스트림이다.
출력
각 테스트 케이스마다 구역 안에 있을 수 있는 로봇 수의 최솟값과 최댓값을 공백으로 구분해 한 줄에 출력한다.