Guruh talabasi Omonbayev Jaloliddin
Download 22.51 Kb.
|
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 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
ma'muriyatiga murojaat qiling