Featured image of post [Algorithm] C++/Python 백준 3653번 : 영화 수집

[Algorithm] C++/Python 백준 3653번 : 영화 수집

백준 3653 영화 수집 문제는 DVD를 꺼내고 맨 위로 올릴 때마다 기존 위치에서 그 위에 쌓인 DVD의 개수를 빠르게 계산해야 하는 문제입니다. Fenwick Tree를 활용하여 각 DVD의 최신 위치와 위쪽 쌓임 정보를 O(log N)에 관리하며, 다수의 쿼리를 효율적으로 해결하는 방법과 자료구조 설계 아이디어를 소개합니다.

Featured image of post [Algorithm] C++/Python 백준 3679번 : 단순 다각형

[Algorithm] C++/Python 백준 3679번 : 단순 다각형

백준 3679번 단순 다각형 문제는 여러 점이 평면 위에 주어졌을 때, 자기 교차 없는 단순 다각형을 만드는 점의 순서를 구하는 알고리즘 문제입니다. 기하학적 정렬과 구현이 핵심이며, O(N log N) 복잡도의 효율적인 방법과 실제 순열 출력 예시를 포함합니다.

Featured image of post [Algorithm] C++/Python 백준 5670번 : 휴대폰 자판

[Algorithm] C++/Python 백준 5670번 : 휴대폰 자판

백준 5670번 휴대폰 자판 문제는 Trie(트라이) 자료구조 및 재귀적 분할정복 방식으로, 자동완성 기능이 적용된 자판에서 각 단어별 버튼 입력 횟수의 평균을 효율적으로 계산하는 알고리즘을 다룹니다. 다양한 예제와 최적화 기법을 소개합니다.

Featured image of post [Algorithm] C++/Python 백준 1014번 : 컨닝

[Algorithm] C++/Python 백준 1014번 : 컨닝

백준 1014 컨닝 문제는 좌우 및 대각선 컨닝 제약과 일부 불능 좌석이 존재하는 교실에서, 비트마스킹과 동적 계획법을 활용해 최대 학생 수를 배치하는 최적화 알고리즘 구현을 다루는 대표적인 비트마스킹 DP 문제입니다.

Featured image of post [Algorithm] C++/Python 백준 2618번 : 경찰차

[Algorithm] C++/Python 백준 2618번 : 경찰차

백준 2618번 경찰차 문제는 동적 계획법(DP)을 활용해 두 대의 경찰차가 격자 도시 내 다수의 사건을 최적으로 분담하도록 이동 경로를 결정한다. 경찰차 각각의 마지막 위치 및 사건 담당 순서에 따른 최소 이동 거리 조합을 탐색하며, 메모이제이션과 상태 전이 설계, 그리고 최적 경로 추적에 대한 세부 구현 원리와 코드를 상세 설명한다.

Featured image of post [Algorithm] C++/Python 백준 3176번 : 도로 네트워크

[Algorithm] C++/Python 백준 3176번 : 도로 네트워크

백준 3176번 도로 네트워크 문제는 트리에서 두 정점 사이 경로의 최소·최대 간선 가중치를 효율적으로 구하는 알고리즘을 다룹니다. LCA(Binray Lifting)와 Sparse Table을 활용해, 다수 쿼리도 빠르게 처리하는 고난도 트리 문제의 주요 풀이와 최적화 기법을 상세히 설명합니다.

Featured image of post [Python] 고급 파이썬 튜토리얼: OOP·데코레이터·제너레이터·테스트

[Python] 고급 파이썬 튜토리얼: OOP·데코레이터·제너레이터·테스트

고급 파이썬의 핵심 주제를 체계적으로 다룹니다. 고급 조건문·정규 표현식·OOP·이터러블과 제너레이터·클로저와 데코레이터·메모리 관리·테스트·동적 타이핑·패킹·어설션 등을 실무 예제와 함께 설명하며, 데이터 과학·AI·웹 개발로의 확장까지 소개합니다. 초급에서 중급으로 성장하려는 개발자에게 추천합니다.

Featured image of post [Algorithm] C++/Python 백준 16287번 : Parcel

[Algorithm] C++/Python 백준 16287번 : Parcel

백준 16287 Parcel 문제는 서로 다른 n개의 정수가 주어질 때, 네 개의 원소를 골라 합이 정확히 W가 되는지 판단하는 4-SUM 유형입니다. 해시 및 정렬, 두 포인터 등 다양한 최적화 기법을 이용하여 O(N²) 시간 복잡도 내에 효율적으로 조합 여부를 판별하는 방법과 구현 전략, 가지치기를 중심으로 핵심 풀이를 다룹니다.