[C++] 백준 2559. 수열

멋진감자·2025년 2월 12일
0

알고리즘

목록 보기
84/105
post-thumbnail

🌽 문제

🥕 입출력

🥔 풀이

별 특징 없는 구간 합 문제다.
v[i]: arr[i - k + 1] ~ arr[i] 사이의 합 으로 두고 풀었다.

🥬 코드

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	int n, k;
	cin >> n >> k;
	vector<int> arr(n);
	vector<int> v(n);

	for (int i = 0; i < n; i++)
		cin >> arr[i];

	for (int i = 0; i < k; i++)
		v[k - 1] += arr[i];

	for (int i = k; i < n; i++)
		v[i] = v[i - 1] - arr[i - k] + arr[i];

	int maxi = -2e9;
	for (int i = k - 1; i < n; i++)
		maxi = max(maxi, v[i]);
	cout << maxi;

	return 0;
}

🥜 채점

2년 전에 실패한 문제.. 실패해놓고 다시 안 푼 것도 나같다;

profile
난멋져

0개의 댓글

관련 채용 정보