본문 바로가기

프로그래머스

(5)
[프로그래머스] 기지국 설치 - 파이썬(Python3) 프로그래머스 level 3 기지국 설치 ->programmers.co.kr/learn/courses/30/lessons/12979 코딩테스트 연습 - 기지국 설치 N개의 아파트가 일렬로 쭉 늘어서 있습니다. 이 중에서 일부 아파트 옥상에는 4g 기지국이 설치되어 있습니다. 기술이 발전해 5g 수요가 높아져 4g 기지국을 5g 기지국으로 바꾸려 합니다. 그런데 5 programmers.co.kr 이번 문제는 기지국 설치 문제입니다! 꽤 생각을 요하지만, 굉장히 단순한 아이디어로 풀 수 있습니다. 같이 풀어볼게요! 풀이 아이디어 그리고 집의 개수가 N일때 선형복잡도 O(N)을 가지면 효율성 테스트를 통과하지 못하고, station의 개수가 T라면 O(T)로 문제를 풀어내야 합니다. 즉, 집 리스트를 돌면서 ..
[프로그래머스] 징검다리 - 파이썬(Python3) 프로그래머스 level 4 징검다리 -> programmers.co.kr/learn/courses/30/lessons/43236 코딩테스트 연습 - 징검다리 출발지점부터 distance만큼 떨어진 곳에 도착지점이 있습니다. 그리고 그사이에는 바위들이 놓여있습니다. 바위 중 몇 개를 제거하려고 합니다. 예를 들어, 도착지점이 25만큼 떨어져 있고, 바위가 programmers.co.kr 이 문제는 프로그래머스에 있는 징검다리 문제입니다. level4라서 꽤 어려워보이지만, 쉬운 편입니다! 문제 읽어보시고, 같이 풀어볼게요! 풀이 아이디어 먼저 distance 범위가 저러니까.. 무조건 이분탐색인것 같네요. 핵심은 이분탐색인걸 아는게 첫번째입니다. 그러면 뭘 탐색해야하느냐면, 거리의 최솟값을 탐색하면 됩니다..
[프로그래머스] 구명보트 - 파이썬(Python3) 프로그래머스 level 2 구명보트 -> https://programmers.co.kr/learn/courses/30/lessons/42885 코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 이번에 풀어볼 문제는 구명보트 문제입니다. 문제 분류가 그리디로 되어있지만, 적혀있지 않아도 그리디를 떠올려야 합니다. 같이 한번 풀어봅시다. 풀이 아이디어 첫번째로 든 생각 -> 그냥 작은애들부터 태울 수 있는만큼 태워서 보낸다. 하지만 최대무게 제한이 150이고 50 70 80 100 처럼 ..
[카카오 코딩테스트 / 프로그래머스] 문자열 압축 - 파이썬(Python3) [카카오 코딩테스트 프로그래머스 문자열 압축 -> https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자 programmers.co.kr 이번 문제는 2020 카카오 코딩테스트에 나온 문자열 압축 문제입니다! 상당히 쉬운 편이니 한번 풀어볼게요. 풀이 아이디어 이 문제는 문자열을 1개 단위로 잘라서 압축한것부터 len(문자열)//2 단위로 잘라서 압축한것까지 비교해주면 됩니다. len(문자열)//2 를 넘어버리면 어차피 길이가 다른 두 문자열..
[카카오 코딩테스트 / 프로그래머스] 블록 이동하기 - 파이썬(Python3) [2020 KAKAO BLIND RECRUITMENT] 블록 이동하기 -> https://programmers.co.kr/learn/courses/30/lessons/60063 코딩테스트 연습 - 블록 이동하기 [[0, 0, 0, 1, 1],[0, 0, 0, 1, 0],[0, 1, 0, 1, 1],[1, 1, 0, 0, 1],[0, 0, 0, 0, 0]] 7 programmers.co.kr 이 문제는 2020 카카오 코딩테스트에 나온 블록 이동하기 문제입니다 ! 프로그래머스에서 문제 만나보실 수 있습니다. 한번 같이 풀어보도록 할게요 ! 풀이 아이디어 먼저 기본적으로 N*N 지도에서 이동을 시켜야하므로 그래프 탐색 알고리즘을 생각해내야 합니다. 그리고 고정된 출발점에서 고정된 도착점까지의 최단 시간을 구..