문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

4043 : 방 탈출 열쇠 수집

•시간제한: 1.000 S •메모리제한: 256 MB •제출: 5 •통과: 5 •만든사람: suakii

4043 : 방 탈출 열쇠 수집

시간 1.000s · 메모리 256MB · 제출 5 · 정답 5

문제 설명

$N$개의 방이 1번부터 $N$번까지 순서대로 나열되어 있습니다. 각 방에는 열쇠 또는 자물쇠가 있습니다.

1번 방부터 순서대로 방문하며 다음과 같은 규칙으로 진행합니다.
  • K [열쇠이름]: 해당 열쇠가 보관된 방입니다. 조건 없이 항상 입장할 수 있으며, 방에 들어가는 즉시 해당 열쇠를 획득합니다. 한 번 획득한 열쇠는 사라지지 않고 계속 보관되어 여러 번 재사용할 수 있습니다.
  • L [열쇠이름]: 해당 열쇠로 잠겨 있는 자물쇠 방입니다. 이미 해당 열쇠를 획득하여 가지고 있다면 입장할 수 있고, 열쇠가 없다면 입장하지 못하고 건너뜁니다.
1번 방부터 $N$번 방까지 차례대로 탐색할 때, 입장 가능한 모든 방의 번호를 오름차순으로 출력하는 프로그램을 작성하세요.

[제약 조건]
• $1 \le N \le 20$
• $N$은 정수
• 이름은 공백이 없는 영문 대소문자 문자열

입력 설명

첫째 줄에 방의 개수 $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 방: 해당 열쇠가 집합에 있으면 입장 성공 (방 번호 기록), 없으면 건너뜀

출처/분류

NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘