4043 : 방 탈출 열쇠 수집
•시간제한: 1.000 S
•메모리제한: 256 MB
•제출: 5
•통과: 5
•만든사람: suakii
문제 설명
$N$개의 방이 1번부터 $N$번까지 순서대로 나열되어 있습니다. 각 방에는 열쇠 또는 자물쇠가 있습니다.
1번 방부터 순서대로 방문하며 다음과 같은 규칙으로 진행합니다.
[제약 조건]
• $1 \le N \le 20$
• $N$은 정수
•
1번 방부터 순서대로 방문하며 다음과 같은 규칙으로 진행합니다.
- K [열쇠이름]: 해당 열쇠가 보관된 방입니다. 조건 없이 항상 입장할 수 있으며, 방에 들어가는 즉시 해당 열쇠를 획득합니다. 한 번 획득한 열쇠는 사라지지 않고 계속 보관되어 여러 번 재사용할 수 있습니다.
- L [열쇠이름]: 해당 열쇠로 잠겨 있는 자물쇠 방입니다. 이미 해당 열쇠를 획득하여 가지고 있다면 입장할 수 있고, 열쇠가 없다면 입장하지 못하고 건너뜁니다.
[제약 조건]
• $1 \le N \le 20$
• $N$은 정수
•
이름은 공백이 없는 영문 대소문자 문자열입력 설명
첫째 줄에 방의 개수 $N$이 주어집니다.
둘째 줄부터 $N$개의 줄에 걸쳐 1번 방부터 $N$번 방까지의 정보(
둘째 줄부터 $N$개의 줄에 걸쳐 1번 방부터 $N$번 방까지의 정보(
K 이름 또는 L 이름)가 순서대로 주어집니다.출력 설명
입장 가능한 방의 번호를 오름차순으로 출력합니다.
(공백으로 구분하여 한 줄에 출력하거나, 한 줄에 하나씩 여러 줄에 걸쳐 출력해도 모두 정답으로 인정됩니다. 만약 입장 가능한 방이 하나도 없다면 아무것도 출력하지 않습니다.)
(공백으로 구분하여 한 줄에 출력하거나, 한 줄에 하나씩 여러 줄에 걸쳐 출력해도 모두 정답으로 인정됩니다. 만약 입장 가능한 방이 하나도 없다면 아무것도 출력하지 않습니다.)
입력 예시
COPY
복사되었습니다!
복사되었습니다!
5
K A
L B
K B
L A
L B
출력 예시
COPY
복사되었습니다!
복사되었습니다!
1 3 4 5
도움
획득한 열쇠들을 보관하는 집합(Set 또는 List)을 유지하며 1번 방부터 순서대로 확인합니다.
- K 방: 집합에 열쇠를 추가하고 입장 성공 (방 번호 기록)
- L 방: 해당 열쇠가 집합에 있으면 입장 성공 (방 번호 기록), 없으면 건너뜀
- K 방: 집합에 열쇠를 추가하고 입장 성공 (방 번호 기록)
- L 방: 해당 열쇠가 집합에 있으면 입장 성공 (방 번호 기록), 없으면 건너뜀