Задание 17. Информатика. 2022-10
- Просмотры: 96
- Изменено: 23 ноября 2024
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма элементов не менее \(50\) и оба числа в паре неотрицательные, затем минимальное из произведений элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var10.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
min_prod = 100000000
for i in range(1, len(nums)):
if nums[i-1] + nums[i] > 49 and nums[i-1] >= 0 and nums[i] >= 0:
pair_count += 1
min_prod = min(min_prod, nums[i-1] * nums[i])
print(pair_count, min_prod)
C++
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int main() {
int pair_count = 0;
long min_prod = 100000000;
ifstream in("17var10.txt");
string line;
int n1, n2;
getline(in, line);
n1 = stoi(line);
while(getline(in, line)) {
n2 = stoi(line);
if(n1 + n2 > 49 && n1 >= 0 && n2 >= 0) {
pair_count++;
if (n1 * n2 < min_prod)
min_prod = n1 * n2;
}
n1 = n2;
}
cout << pair_count << " " << min_prod << endl;
return 0;
}
Ответ: \(1042\) \(6736\)