Algorithm 14

[카카오 코테 2019 | python] 오픈 채팅방 ✅

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/42888level22019 KAKAO BLIND RECRUITMENT Q1) 문제를 어떻게 이해하셨나요?A1) 이 문제는 채팅방에서 유저의 입장, 퇴장, 닉네임 변경 기록을 바탕으로, 최종적으로 관리자가 보게 될 메시지를 출력하는 문자열 재구성 문제입니다.Q2) 풀이 전략A2) - 각 유저의 user_id별로 최신 닉네임을 저장해야 해요. → "Change"와 "Enter" 명령에서 갱신됨 - 실제 메시지를 출력하는 건 "Enter", "Leave" 명령만 해당돼요. → 출력용 메시지는 이 명령만 기록하고, 닉네임은 나중에 넣음 - 따라서, 첫 번째 패스에서는 유저 ID 기준으로 닉네임 ..

Algorithm 2025.06.17

[카카오 코테 2022 | python] k진수에서 소수 개수 구하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/92335level22022 KAKAO BLIND RECRUITMENT Q1) 문제를 어떻게 이해하셨나요?A1) 이 문제는 양의 정수 n을 k진수로 바꾼 후, 그 안에 0을 기준으로 나뉜 연속된 숫자들 중 소수인 수의 개수를 구하는 문제입니다. 여기서 주의할 점은, 진수 변환 이후0으로 둘러싸이거나 경계에 있는 숫자들을 소수 후보로 보고, 10진수로 해석해서 소수인지 판단해야 한다는 점입니다.Q2) 풀이 계획A2) 먼저 n을 k진수 문자열로 변환합니다. 변환된 문자열을 '0'을 기준으로 분할합니다. 각 토큰에 대해 비어 있지 않고 10진수로 변환했을 때 소수이면 결과에 포함시킵니다. 최종적..

Algorithm 2025.06.17

[카카오 코테 2021 | python] 거리두기 확인하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/81302#fn1level22021 카카오 채용연계형 인턴십 Q1) 이 문제를 어떻게 해석하셨나요?A1) 주어진 5개의 5x5 대기실에서 응시자 간의 거리두기 준수 여부를 확인하는 문제입니다. 각 자리에는 응시자(P), 빈 테이블(O), 파티션(X)이 있으며, 응시자 사이의 맨해튼 거리가 2 이하일 때 파티션이 없다면 거리두기 위반으로 간주합니다.Q2) 이 문제를 어떻게 풀 계획이신가요? A2)- 각 대기실을 2차원 배열로 탐색합니다.- 응시자(P)가 있는 위치를 기준으로, BFS 탐색을 수행해, 맨해튼 거리 ≤ 2의 위치에 있는 다른 P를 확인합니다. 그 사이에 X(파티션)이 없으면 실패..

Algorithm 2025.06.17

[카카오 코테 2018 | python] 캐시

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/176802018 KAKAO BLIND RECRUITMENTlevel 2 Q1) 이 문제는 어떤 문제인가요?A1) 이 문제는 주어진 도시 이름들을 순차적으로 캐시에 넣으면서, LRU(Least Recently Used) 정책을 적용해 실행 시간을 계산하는 시뮬레이션 문제입니다.Q2) 이 문제를 어떻게 풀 계획이신가요?A2) 먼저 도시 이름 리스트를 순회하면서, 도시 이름을 소문자로 통일한 뒤 캐시에 있는지 확인합니다.캐시에 있으면 cache hit이므로 실행 시간 1을 더하고, 해당 도시를 가장 최근으로 갱신합니다.캐시에 없으면 cache miss이므로 실행 시간 5를 더하고, 캐시가 가득..

Algorithm 2025.06.17
728x90