#752
추격전
원문: English
시간 제한
2s
메모리 제한
1024MB
제출
0
정답
0
맞힌 사람
0
정답 비율
0.0%
문제
충남대학교 캠퍼스에는 ()개의 장소가 있으며, 각 장소 ()에서 다른 장소 ()로 향하는 단방향 통로가 하나씩 있다. ()명의 술래가 있으며, 번째 술래는 처음에 장소 (, 모든 는 서로 다름)에 위치해 있다. 매 시간 단계마다 모든 술래는 현재 위치한 장소에서 통로를 따라 다음 장소로 반드시 이동한다. 만약 민혁이가 술래와 같은 장소에 있게 되면 민혁이는 잡힌다.
민혁이는 어떤 장소 에서 시작한다. 매 시간 단계마다 민혁이는 두 가지 행동 중 하나를 선택할 수 있다. 현재 장소에서 휴식(머무르기)하거나, 통로를 따라 다음 장소로 이동하는 것이다. 민혁이가 이동을 선택하면 술래들과 동시에 이동한다. 민혁이는 영원히 술래에게 잡히지 않는 것을 목표로 한다.
각 시작 장소 ()에 대해, 민혁이가 영원히 잡히지 않으면서 휴식할 수 있는 최대 횟수를 구하시오.
입력
첫째 줄에 장소의 수 과 술래의 수 가 공백으로 구분되어 주어진다. (; )
둘째 줄에 각 장소 에서 나가는 통로의 목적지인 이 공백으로 구분되어 주어진다. ()
셋째 줄에 각 술래의 시작 장소 가 공백으로 구분되어 주어진다. (모든 는 서로 다름)
출력
개의 줄을 출력한다. 그중 번째 줄에는 민혁이가 장소 에서 시작할 때 영원히 잡히지 않으면서 휴식할 수 있는 최대 횟수를 출력한다.
만약 민혁이가 어떤 방법을 써도 영원히 잡히지 않도록 할 수 없다면 -1을 출력한다. 만약 민혁이가 무한히 많이 휴식할 수 있다면 -2를 출력한다.
예제 입력 1
4 1
2 1 4 3
1
예제 출력 1
-1
0
-2
-2
제약 조건
- 일부 테스트 케이스에서는 이다.
- 일부 테스트 케이스에서는 이다.
코드 제출
코드를 제출하려면 로그인이 필요합니다.
로그인내 제출
제출 내역이 없습니다.
맞은 사람
아직 맞은 사람이 없습니다.
난이도 투표
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
제출 내역이 없습니다.