알고리즘/programmers

[Programmers 위클리 챌린지 7주차] 입실 퇴실

꾸준함. 2021. 9. 14. 23:58

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/86048

코딩테스트 연습 - 7주차

사회적 거리두기를 위해 회의실에 출입할 때 명부에 이름을 적어야 합니다. 입실과 퇴실이 동시에 이뤄지는 경우는 없으며, 입실 시각과 퇴실 시각은 따로 기록하지 않습니다. 오늘 회의실에는

programmers.co.kr

시뮬레이션 문제였습니다.

알고리즘은 아래와 같습니다.
1. leave 배열을 기준으로 순회하며 현재 나갈 차례인 사람이 회의실에 들어올 때까지 사람들을 회의실에 입장시킵니다.
1.1 이 때, 회의실에 들어온 사람들끼리 필수로 만났으므로 visited map에 표시해줍니다.
2. 회의실에 나갈 차례가 된 사람들을 회의실에서 차례대로 내보냅니다.
3. leave 배열을 전부 순회할 때까지 1, 2번 과정을 반복합니다.
4. visited map 기준으로 각 사람마다 필수 불가결로 만난 사람들의 수를 출력해줍니다.



개발환경:Visual Studio 2017

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형