본문 바로가기

전체 글

(41)
[TIL] 99클럽 코테 스터디 2일차 TIL - 이진탐색 : 백준 10561 징검다리 문제 풀이 with python Today's keyword : 이진탐색  문제설명주어진 징검다리의 개수에 따라 건너야 하는 수를 최적화하는 문제로, 주어진 징검다리의 개수 n이 있을 때, 1부터 n까지의 수 중에서 가장 많이 건널 수 있는 수를 찾는 것이 목표https://www.acmicpc.net/problem/11561문제풀이이 문제에서 포인트는 두 번째 점프부터는 이전의 점프한 거리보다  1 이상 긴 거리를 뛰어야 한다는 것이다. 최대 징검다리 수를 출력한다고 하면 가장 이상적인 점프 방식은 처음에 한 칸 뛰고, 그 다음 두 칸 뛰고, 그 다음 세 칸 뛰는 식으로 점프하는 거리를 한 칸씩 늘리는 것이다. 징검다리를 건너기 위한 최소한의 수는 한 칸씩 점프 이동거리를 늘린 거리의 합이기 때문에 수식으로 작성하면 N*(N+1)/2..
[TIL] 99클럽 코테 스터디 1일차 TIL - 이진탐색 : 백준 1072 게임 문제 풀이 with python Today's keyword : 이진탐색 이진탐색이란?   정렬된 배열에서 특정 값을 찾기 위해 반으로 나누면서 탐색해 나가는 알고리즘입니다. 이 방법은 배열이 정렬되어 있어야 사용 가능합니다. 이진탐색 작동원리 1. 초기 설정 : 배열의 시작과 끝 인덱스를 설정 2. 중간 인덱스 계산 : 시작 인덱스와 중간 인덱스 계산 3. 비교 중간 인덱스의 값이 찾고자 하는 값과 같으면 탐색 종료 중간 인덱스의 값이 찾고자 하는 값보다 크면, 끝 인덱스를 중간 인덱스 - 1로 설정하여 왼쪽 절반을 탐색중간 인덱스의 값이 찾고자 하는 값보다 작으면, 시작 인덱스를 중간 인덱스 + 1로 설정하여 오른쪽 절반을 탐색4. 반복 : 절반으로 나누면서 시작 인덱스가 끝 인덱스 초과할 때까지 반복 문제설명 형택이가 게임을 몇 ..
시계열에서 변화된 지점 찾기 : Change Point Detection (CPD) 기법 이번에 소개해드릴 내용은 시계열이나 신호 데이터에서 변화를 찾는 기법인 Change point detection입니다. 진행했던 프로젝트에서 공정 과정에서 유의미한 피처를 도출하기 위한 하나의 작업으로 Segmentation을 진행했고, Segmentation을 하기 위해 Change point detection 기법을 활용했습니다. 최종 목표는 유의미한 피처 도출이었고, 데이터의 변화가 발생한 구간을 나눠 보다 유의미한 피처를 도출하고자 하였습니다. 해당 글에서는 Change point detection 이 무엇인지, 어떻게 활용되는지, 알고리즘에는 어떤 것들이 있는지 간단한 실습과 함께 설명하고자 합니다. 1. CPD 개요  CPD(Change Point Detection)이란 시계열 데이터의 특성(..