시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
2 초 | 1024 MB | 96 | 26 | 22 | 35.484% |
KSA는 $N$개의 건물로 구성되어 있으며 $1, 2, \cdots, N$으로 건물 번호가 붙어 있다. 또한, 건물들 사이를 이동할 수 있는 $A$개의 지상 통로와 $B$개의 구름다리가 있다. 지상 통로는 $1, 2, \cdots, A$로, 구름다리는 $1, 2, \cdots, B$로 번호가 붙어 있다.
$i$번 지상 통로는 서로 다른 두 건물 $U_i$와 $V_i$를 양방향으로 연결한다. $(1 \le i \le A)$ 즉, $U_i$에서 $V_i$ 방향, $V_i$에서 $U_i$ 방향 모두 이동할 수 있다.
비슷하게, $i$번 구름다리는 서로 다른 두 건물 $W_i$와 $X_i$를 양방향으로 연결한다. $(1 \le i \le B)$
두 건물 사이에 지상 통로나 구름다리가 여러 개 존재할 수도 있다.
이제 아래 조건을 만족하게끔 $0$개 이상의 건물에 깃발을 꽂으려고 한다. 이때 경로의 양쪽 끝에 있는 건물도 경로에 포함된다.
하나의 경로는 같은 통로나 다리를 여러 번 지날 수 없다. 조건을 만족하려면 어떤 건물들에 깃발을 꽂아야 하는지 찾아보자!
첫 번째 줄에 세 정수 $N$, $A$, $B$가 주어진다.
$i + 1$번째 줄에 두 정수 $U_i$, $V_i$가 주어진다. $(1 \le i \le A)$
$i + A + 1$번째 줄에 두 정수 $W_i$, $X_i$가 주어진다. $(1 \le i \le B)$
첫 번째 줄에 조건을 만족하게끔 건물들에 깃발을 꽂을 수 있다면 YES
, 아니라면 NO
를 출력한다.
만약 꽂을 수 있다면, $0$개 이상의 정수를 출력한다. 각 정수는 깃발을 꽂을 건물들의 번호를 의미한다. 단, 같은 건물 번호를 중복해서 출력하지 않아야 한다.
깃발을 하나도 꽂지 않는 경우도 조건을 만족한다면 두 번째 줄에 아무것도 출력하지 않아도 된다.
정답이 여러 개 존재한다면 아무거나 출력해도 상관없으며, 정수들을 출력하는 순서는 상관없다.
번호 | 배점 | 제한 |
---|---|---|
1 | 5 | $A = B = 1$ |
2 | 25 | $N \leq 2000$ |
3 | 70 | 추가 제약 조건 없음 |
3 1 1 1 2 2 3
YES 1 2
4 3 3 1 2 2 3 3 4 1 2 2 3 3 4
NO
High School > 한국과학영재학교 > 2023 KSA Automata Winter Contest H번