공부/알고리즘 공부2025. 12. 26. 17:09[BOJ C++] 1806번 - 부분합
백준 1806번 - 부분합문제더보기10,000 이하의 자연수로 이루어진 길이 N짜리 수열이 주어진다. 이 수열에서 연속된 수들의 부분합 중에 그 합이 S 이상이 되는 것 중, 가장 짧은 것의 길이를 구하는 프로그램을 작성하시오.입력더보기첫째 줄에 N (10 ≤ N 출력더보기첫째 줄에 구하고자 하는 최소의 길이를 출력한다. 만일 그러한 합을 만드는 것이 불가능하다면 0을 출력하면 된다.문제 접근이 문제는 투 포인터와 슬라이딩 윈도우를 사용했다. 투 포인터에 대한 설명은 전에 풀었던 2467번 - 용액 문제에 설명되어있다.슬라이딩 윈도우투 포인터와 연계되는 알고리즘으로, 고정된 사이즈의 창(윈도우)가 배열을 순회하며 그 안에 있는 데이터를 가지고 연산을 수행한다.윈도우 내의 누적합을 한 번만 구한 뒤, 가장..
