#70
경로
채점 준비중
시간 제한
1000ms
메모리 제한
256MB
제출
13
정답
9
맞힌 사람
9
정답 비율
69.2%

경로(Path)는 그래프 위에서 두 정점 사이를 이동하면서 지나는 간선을 나열한 것이다.

위 그래프에서 ~[(1, 3), (3, 4), (4, 5)]~는 정점 1에서 5까지 이동하는 경로 중 하나이다. 그런데, 간선을 나열하는 대신에 지나가는 정점만으로 표현할 수도 있다. 예를 들어 위 그림의 경로는 ~[1, 3, 4, 5]~로 표현할 수도 있다.

K개의 정점 a_1, a_2, \cdots, a_K가 주어졌을 때, 이 정점을 순서대로 지나는 경로가 존재하는지 확인해보자. 즉, 주어진 그래프에서 간선 ~(a_1, a_2), (a_2, a_3), \cdots, (a_{K - 1}, a_K)~가 모두 존재하는지 확인해보자.

입력

첫째 줄에 그래프의 정점의 개수와 간선의 개수 ~N, M(1 \le N, M \le 50)~이 주어진다. 그래프의 각 정점에는 1부터 N까지 번호가 매겨져 있다.

둘째 줄부터 M개의 줄에 그래프의 간선이 주어진다. 간선은 서로 다른 두 정점 ~u, v(1 \le u, v \le N)~를 잇는다. 주어지는 그래프는 단순 그래프(Simple graph)이다. 따라서 두 정점을 잇는 간선은 최대 한 개 존재할 수 있으며, 자기 자신을 잇는 간선은 없다.

셋째 줄에 ~K(2 \le K \le N)~이 주어진다.

넷째 줄에 ~a_1, a_2, \cdots, a_K(1 \le a_i \le N)~이 주어진다.

출력

a_1, a_2, \cdots, a_K를 순서대로 지나는 경로가 존재한다면 YES를 그렇지 않다면 NO를 출력한다.

예제 입력 1

5 7
1 2
1 3
1 4
2 4
2 5
3 4
4 5
4
1 3 4 5

예제 출력 1

YES

예제 입력 2

5 7
1 2
1 3
1 4
2 4
2 5
3 4
4 5
4
1 2 3 4

예제 출력 2

NO

예제 입력 3

5 7
1 2
1 3
1 4
2 4
2 5
3 4
4 5
5
1 3 4 5 2

예제 출력 3

YES

힌트

인접 행렬이나 인접 리스트 방식으로 그래프를 저장합니다.

주어진 그래프에서 간선 ~(a_1, a_2), (a_2, a_3), \cdots, (a_{K - 1}, a_K)~가 모두 존재하는지 확인합니다.

코드 제출
로딩 중...
내 제출
아직 제출 내역이 없습니다.
맞은 사람
순위사용자언어시간메모리코드 길이
🥇202402699_오태영Python445ms10368KB527B
🥈202102717_최성윤Java1041ms27008KB1426B
🥉202102622_김우솔Java1053ms27264KB2283B
4202102713_진민혁Java1063ms28160KB1268B
5202302564_성준혁Java1326ms33024KB1258B
6202402698_오아누Java1329ms33280KB1203B
7202302602_이준휘Java1370ms33688KB640B
8202402673_박기용Java1381ms33436KB1094B
9202102659_안우진Java1761ms34048KB1093B
전체 제출
#사용자결과언어시간메모리코드 길이제출 시간
3618202102622_김우솔정답Java1053ms27264KB2283B2024. 05. 13. 10:47
3617202102622_김우솔오답Java1042ms27136KB3091B2024. 05. 13. 10:41
3616202102659_안우진정답Java1761ms34048KB1093B2024. 05. 13. 10:36
3615202102659_안우진오답Java1752ms34304KB1093B2024. 05. 13. 10:35
3569202302564_성준혁정답Java1326ms33024KB1258B2024. 05. 11. 09:44
3563202102713_진민혁정답Java1063ms28160KB1268B2024. 05. 09. 11:27
3561202102675_이문영오답Java1376ms33408KB924B2024. 05. 09. 11:18
3559202402698_오아누정답Java1329ms33280KB1203B2024. 05. 09. 11:13
3558202402699_오태영정답Python445ms10368KB527B2024. 05. 09. 11:13
3550202402699_오태영오답Python444ms10368KB444B2024. 05. 09. 10:56
3528202402673_박기용정답Java1381ms33436KB1094B2024. 05. 09. 09:30
3510202102717_최성윤정답Java1041ms27008KB1426B2024. 05. 09. 04:11
3501202302602_이준휘정답Java1370ms33688KB640B2024. 05. 09. 03:23