Решение на Python
Шаг 1. Чтение строк файла и нумерация
f = open('9.txt')
for i, line in enumerate(f, start=1):
print(i, line)
break
📌 Результат: для каждой строки получаем её номер и содержимое (на примере первой строки).
Шаг 2. Преобразование строки в список чисел
f = open('9.txt')
for i, line in enumerate(f, start=1):
nums = list(map(int, line.split()))
print(i, nums)
break
📌 Результат: строка превращается в список целых чисел, например [3, 7, 10, 2, 6].
Шаг 3. Проверка порядка возрастания
f = open('9.txt')
for i, line in enumerate(f, start=1):
nums = list(map(int, line.split()))
if all(nums[j] < nums[j + 1] for j in range(len(nums) - 1)):
print(i, nums, '— строгое возрастание')
else:
print(i, nums, '— не строгое возрастание')
break
📌 Результат: если каждое число меньше следующего, в строке строгое возрастание.
Шаг 4. Минимум, максимум и сумма остальных трёх чисел
f = open('9.txt')
for i, line in enumerate(f, start=1):
nums = list(map(int, line.split()))
if not all(nums[j] < nums[j + 1] for j in range(len(nums) - 1)):
continue
mx = max(nums)
mn = min(nums)
other = sum(nums) - mx - mn
print(i, nums)
print('max =', mx, 'min =', mn, 'сумма остальных =', other)
print('max + min =', mx + mn, '<= other?', mx + mn <= other)
break
📌 Результат: для строк с возрастанием сравниваем max + min с суммой трёх остальных (sum(nums) − max − min).
Шаг 5. Проверка условия и получение ответа
f = open('9.txt')
count = 0
for i, line in enumerate(f, start=1):
nums = list(map(int, line.split()))
if not all(nums[i] < nums[i + 1] for i in range(len(nums) - 1)):
continue
mx, mn = max(nums), min(nums)
other = sum(nums) - mx - mn
if mx + mn <= other:
count += 1
print(count)
Перебираем все строки. Если числа строго возрастают и max + min ≤ сумма остальных, увеличиваем счётчик. Выводим количество подходящих строк.
📌 Ответ: 138.
Решение. Первое условие: числа в строке расположены в порядке возрастания. В ячейку F1 введём:
=ЕСЛИ(И(A1<B1;B1<C1;C1<D1;D1<E1);1;0)
и скопируем формулу вниз до F25000.
Второе условие: сумма минимального и максимального чисел строки не больше суммы оставшихся трёх. В ячейку G1 введём:
=ЕСЛИ(И(F1=1;МАКС(A1:E1)+МИН(A1:E1)<=СУММ(A1:E1)-МАКС(A1:E1)-МИН(A1:E1));1;0)
и скопируем формулу вниз до G25000.
Включим фильтр по столбцу G, оставим значение только 1, и посчитаем количество оставшихся строк.
Получим ответ — 138.