문제 출처:programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr 풀이 DFS와 BFS를 사용해서 풀이가 가능한 문제다. BFS를 사용하였는데 DFS를 사용하지 않은 이유는 n의 범위가 200까지 길래 시간 초과 문제가 발생할 수도 있다고 판단하여 BFS를 사용하였다. 2차원 배열을 보면 대칭이므로 i
문제 출처: programmers.co.kr/learn/courses/30/lessons/17684# 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 풀이 1. 우선 'A'부터 'Z'까지 사전(리스트)에 넣는다. 2. 한글자, 두 글자 순서대로 substring 해서 사전에 존재하는지 확인한다. 존재하면, idx를 늘려서 더 긴 문자열을 검색할 수 있도록 한다. 그리고 현재 substring으로 잘라낸 값을 저장. 존재하지 않으면 이전까지는 존재했다는 것을 뜻하므로 저장된 값을 사전에 더하고 저장된 값의 인덱스를 구해서 answer..
문제 출처: programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 풀이 이 문제에 이틀 동안 시달리다 겨우 풀었다. 계속 테스트 케이스 12번에서 실패가 떠서 도대체 무엇이 문제인지 처음부터 하나하나 파악하다 보니 이틀이 걸렸다. 예를 들러 m= "BAA"이고 악보가 "BABAA"인 경우, 우선 "C#"같은 경우 큐를 통해 붙여주는 과정을 수행하였다. 처음 틀린 방식으로는 무조건 악보에서 하나씩 poll()하면서 일..