Guruh talabasi Omonbayev Jaloliddin


Download 22.51 Kb.
Sana11.05.2023
Hajmi22.51 Kb.
#1451098
Bog'liq
2- amaliyot Omonbayev Jaloliddin


911-21 guruh talabasi Omonbayev Jaloliddin

Домашнее задание


(Время: 1 сек. Память: 16 Мб Сложность: 27%)
Петя успевает по математике лучше всех в классе, поэтому учитель задал ему сложное домашнее задание, в котором нужно в заданном наборе целых чисел найти сумму всех положительных элементов, затем найти где в заданной последовательности находятся максимальный и минимальный элемент и вычислить произведение чисел, расположенных в этой последовательности между ними. Так же известно, что минимальный и максимальный элемент встречаются в заданном множестве чисел только один раз и не являются соседними. Поскольку задач такого рода учитель дал Пете около ста, то Петя как сильный программист смог написать программу, которая по заданному набору чисел самостоятельно находит решение. А Вам слабо?
Входные данные
В первой строке входного файла INPUT.TXT записано единственное число N – количество элементов массива. Вторая строка содержит N целых чисел, представляющих заданный массив. Все элементы массива разделены пробелом. Каждое из чисел во входном файле, в том числе и N, не превышает 102 по абсолютной величине.

#include


#include
using namespace std;
int main() {
int n;
cin >> n;
vector a(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
int pos_sum = 0;
for (int x : a) {
if (x > 0) {
pos_sum += x;
}
}
int min_idx = 0, max_idx = 0;
for (int i = 0; i < n; i++) {
if (a[i] < a[min_idx]) {
min_idx = i;
}
if (a[i] > a[max_idx]) {
max_idx = i;
}
}
if (min_idx > max_idx) {
swap(min_idx, max_idx);
}
int prod = 1;
for (int i = min_idx + 1; i < max_idx; i++) {
prod *= a[i];
}

cout << pos_sum << " " << prod << endl;


return 0;
}

Download 22.51 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling