programmers

알고리즘/프로그래머스

[프로그래머스] 입국심사(LV3 - Python)

해당 글에서는 입국심사 문제를 Python을 이용해 풀이하고자 한다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔷 문제 설명더보기이 문제는 이분탐색에 관련된 문제다.코딩테스트를 보기에 앞서 평소에 이분탐색 문제인 것을 알아내는데 어려움을 느껴 연습하는 시간을 가지고자 해당 문제를 풀게 됐다. 🔷 문제 풀이만약 이 문제가 이분탐색인 문제라는 걸 몰랐다면 어떻게 접근했어야 할까?이분탐색이라는 것의 힌트는 바로 입력의 크기이다. 해당 문제에서 입국심사를 기다리는 사람의 최댓값과 한 명을 심사하는데 걸리는 최대 시간은 1,000,000,000이다. 따라서 ..

알고리즘/프로그래머스

[프로그래머스] 이중우선순위큐(LV3 - Python)

해당 글에서는 이중우선순위큐 문제를 Python을 이용해 풀이하고자 한다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔷 문제 설명더보기 🔷 문제 풀이먼저 필자가 풀이한 방식보다 더 효율성이 좋은 알고리즘이 있을 수 있다.나름은 이해하기 쉬운 코드라고 생각하여, 문제가 어려운 사람들을 위해 돕고자 글을 올린다. 해당 문제를 푸려면 min_heap과 max_heap에 대해 알아야 한다.min-heap: 부모노드 값이 자식노드의 값보다 작다.max-heap: 부모노드 값이 자식노드의 값보다 크다.즉, 큐에 삽입된 숫자들 중 최댓값, 최솟값을 구하기 위해서..

알고리즘/프로그래머스

[프로그래머스] 섬 연결하기(LV3 - Python)

해당 글에서는 섬 연결하기 문제를 Python을 이용해 풀이하고자 한다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔷 문제 설명더보기 🔷 문제 풀이사실 누가 봐도 최소 신장 알고리즘으로 풀이하는 문제이다. n개의 섬이 모두 연결되도록 다리가 연결이 돼야 하며, 최소 비용이 돼야하기 때문이다.하지만 이 문제를 처음 마주했을 때, 최소 신장 알고리즘을 알지도 못했다. 분명히 학부 수업에서 배웠으나 기억조차 나지 않았다. 따라서 다시 공부하는 시간을 가졌다. 혹시나 크루스칼 알고리즘을 모른다면 아래의 글을 참고하도록 하자. [알고리즘] 크루스칼 알고리즘이..

알고리즘/프로그래머스

[프로그래머스] 네트워크(LV3 - Python) - Union-Find(유니온 파인드) 알고리즘

해당 글에서는 네트워크 문제를 Python을 이용해 풀이하고자 한다.해당 문제는 Union-Find를 사용하는 대표적인 문제로, 해당 알고리즘을 까먹어 다시 상기하고자 다시 풀이했다! 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔷 문제 설명 🔷 문제 풀이해당 문제를 풀기 위해선 Union-Find의 개념에 대해 알아야 한다.이는 서로소 집합을 찾는 알고리즘으로, 서로소 집합은 공통 원소가 없는 두 집합을 의미한다. 네트워크를 찾는 과정이 서로소 집합을 찾는 과정에 해당하며, 따라서 Union-Find를 이용하면 된다...

당찬 뱁새
'programmers' 태그의 글 목록