Предмет: Информатика, автор: splitfair

Дан массив a из n целых чисел. Требуется найти пять соседних элементов, сумма которых максимальна, и вывести индекс первого из указанных элементов.
Формат входных данных-
На первой строке входного файла записано натуральное число n (5≤n≤100) — число элементов в массиве.
На следующей строке через пробел записаны элементы массива aa — целые числа (|ai|≤1000).
Формат выходных данных-
Требуется вывести индекс указанного элемента, а в случае, если ответов несколько — наименьший индекс из найденных.
входные данные:
7
-1 4 6 -3 5 2 9
выходные данные:
3.
С++ , ПОМОГИТЕ!

Ответы

Автор ответа: petyaGavrikov
6
#include <iostream>
using namespace std;
 
int main() {
int n, sm, im, s=0;
cin >> n;
int a[n];
for (int i=0; i<n; i++) cin >> a[i];
for (int i=0; i<5; i++) s += a[i];
sm = s; im=0;
for (int i=1; i<n-4; i++){
s = s-a[i-1]+a[i+4];
if (s > sm) { sm = s; im = i; }
}
cout << im+1;
return 0;
}

Пример:
7
-1 4 6 -3 5 2 9
3
Похожие вопросы
Предмет: Математика, автор: Nadyadesytak
Предмет: Математика, автор: Diana250283