[프로그래머스] 표 편집 (Python)
1. 문제 https://programmers.co.kr/learn/courses/30/lessons/81303#qna 코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 2. 풀이 처음에 배열로 풀었다가 효율성에서 걸려서 검색해서 다른 사람의 풀이를 참조했다. 이중 링크드 리스트로 풀어야하는 문제. 1번 인덱스부터 시작하여 처음에 현재위치(cur)을 +1 해주었다. prev와 next의 값을 저장하여 현재위치(cur)을 옮길 때마다 값을 갱신해준다. 그리고 삭제..
2021. 9. 8.
[프로그래머스] 섬 연결하기 (C++)
1. 문제 https://programmers.co.kr/learn/courses/30/lessons/42861 코딩테스트 연습 - 섬 연결하기 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr 2. 풀이 네트워크와 비슷해보이지만 MST문제로 크루스칼 알고리즘을 사용해야한다. 1) 비용이 작은 순으로 정렬한다. 2) 최소 비용으로 다리를 연결하고 싸이클이 생기는지 확인한다. 1번 섬과 2번 섬이 연결되면 island[1] = 2, island[2] = 1이 된다. 3) 싸이클이 생기지 않으면 두 섬 사이에 다리를 연결한다. 1) ~ 3) 을 costs 길이만큼 반복!! *크루스칼 알고리즘: https://hyeri0903.tistory.co..
2021. 9. 6.