Задания 17 ЕГЭ по информатике из разных источников
ЕГЭ 2026. Статград. 27.01.2026
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ни одно число не является отрицательным, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на \(70.\) В ответе запишите количество найденных троек, затем максимальную из сумм чисел таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m70 = max(x for x in nums if abs(x) % 100 == 70)
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if all(n > 0 for n in tr) and sum(tr) <= m70:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(152 \,\, 93769\)
ЕГЭ 2026. Статград. 16.12.2025
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно.
Определите количество троек элементов последовательности, в которых не более двух из трёх элементов являются трёхзначными числами, а сумма элементов тройки не меньше минимального трёхзначного положительного элемента последовательности.
В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m = min(x for x in nums if 99 < x < 1000)
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(99 < abs(x) < 1000 for x in tr) < 3 and sum(tr) >= m:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(2441 \,\, 27284\)
ЕГЭ 2026. ЕГКР. 13.12.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ни один из трёх элементов не является четырёхзначным числом, а сумма элементов тройки больше максимального элемента последовательности, оканчивающегося на \(30.\) В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек.
В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m = max([x for x in nums if abs(x) % 100 == 30])
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if not any(999 < abs(x) < 10_000 for x in tr) and sum(tr) > m:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(1032 \,\, 285423\)
ЕГЭ 2026. Демо
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых только один из элементов является двузначным числом, а сумма элементов пары кратна минимальному двузначному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = list(map(int, open('DEMO_17.txt')))
m2 = min(x for x in nums if 9 < x < 100)
q = 0
max_sum = -float('inf')
for x, y in zip(nums, nums[1:]):
if (9 < x < 100) != (9 < y < 100) and (x + y) % m2 == 0:
q += 1
max_sum = max(max_sum, x + y)
print(q, max_sum)
Ответ: \(150 \,\, 9930\)
ЕГЭ 2026. Крылов. Вариант 20
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа делятся нацело на \(5\), затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var20.txt')]
q, min_sum = 0, float('inf')
for p in zip(nums, nums[1:]):
if all(x % 5 == 0 for x in p):
q += 1
min_sum = min(min_sum, sum(p))
print(q, min_sum)
Ответ: \(225\) \(-17790\)
ЕГЭ 2026. Крылов. Вариант 19
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа делятся нацело на \(3\), затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var19.txt')]
q, max_sum = 0, -float('inf')
for p in zip(nums, nums[1:]):
if all(x % 3 == 0 for x in p):
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(562 \,\, 18033\)
ЕГЭ 2026. Крылов. Вариант 18
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число является полным квадратом некоторого натурального числа, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var18.txt')]
q, min_sum = 0, float('inf')
for p in zip(nums, nums[1:]):
if any(int(abs(x)**0.5)**2 == x and x != 0 for x in p):
q += 1
min_sum = min(min_sum, sum(p))
print(q, min_sum)
Ответ: \(41\) \(-9786\)
ЕГЭ 2026. Крылов. Вариант 17
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число является полным квадратом некоторого натурального числа, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var17.txt')]
q, max_sum = 0, -float('inf')
for p in zip(nums, nums[1:]):
if any(int(abs(x)**0.5)**2 == x and x != 0 for x in p):
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(60 \,\, 18555\)
ЕГЭ 2026. Крылов. Вариант 16
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество троек последовательности, в которых ни одно число не оканчивается на \(3\), а сумма квадратов чисел тройки больше максимального элемента последовательности. В ответе запишите количество найденных троек, затем минимальную из сумм квадратов элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var16.txt')]
m = max(nums)
q, min_sum = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if all(x % 10 != 3 for x in tr) and sum(x**2 for x in tr) > m:
q += 1
min_sum = min(min_sum, sum(x**2 for x in tr))
print(q, min_sum)
Ответ: \(2936 \,\, 75058186\)
ЕГЭ 2026. Крылов. Вариант 15
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество троек последовательности, в которых только одно число оканчивается на \(0\), а сумма чисел тройки меньше максимального элемента последовательности. В ответе запишите количество найденных троек, затем максимальную из сумм квадратов элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var15.txt')]
m = max(nums)
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 10 == 0 for x in tr) == 1 and sum(tr) < m:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(203 \,\, 99820\)
ЕГЭ 2026. Крылов. Вариант 14
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых сумма чисел пары равна максимальному чётному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var14.txt')]
m = max([x for x in nums if x % 2 == 0])
q, max_sum = 0, -float('inf')
for a, b in zip(nums, nums[1:]):
if a + b == m:
q += 1
max_sum = max(max_sum, a**2 + b**2)
print(q, max_sum)
Ответ: \(4 \,\, 9994000936\)
ЕГЭ 2026. Крылов. Вариант 13
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых сумма чисел пары равна максимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var13.txt')]
m = max(nums)
q, max_sum = 0, -float('inf')
for a, b in zip(nums, nums[1:]):
if a + b == m:
q += 1
max_sum = max(max_sum, a**2 + b**2)
print(q, max_sum)
Ответ: \(2 \,\, 9997800125\)
ЕГЭ 2026. Крылов. Вариант 12
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в не более двух чисел является пятизначным, а сумма элементов тройки не менее минимального элемента последовательности, оканчивающегося на \(700\). В ответе запишите количество найденных троек чисел, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var12.txt')]
m = min([x for x in nums if abs(x) % 1000 == 700])
q, min_sum = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(9999 < abs(x) < 100_000 for x in tr) < 3 and sum(tr) >= m:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(330 \,\, 452\)
ЕГЭ 2026. Крылов. Вариант 11
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых хотя бы одно из чисел является четырёхзначным, а сумма элементов тройки больше максимального элемента последовательности, оканчивающегося на \(90\). В ответе запишите количество найденных троек чисел, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var11.txt')]
m = max([x for x in nums if abs(x) % 100 == 90])
q, min_sum = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(999 < abs(x) < 10000 for x in tr) > 0 and sum(tr) > m:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(980 \,\, 17924\)
ЕГЭ 2026. Крылов. Вариант 10
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно два из элементов являются трёхзначными, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на \(100\). В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var10.txt')]
m = max([x for x in nums if x % 1000 == 100])
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(99 < x < 1000 for x in tr) == 2 and sum(tr) <= m:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(29 \,\, 7069\)
ЕГЭ 2026. Крылов. Вариант 9
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых только одно из чисел является двузначным, а сумма элементов тройки меньше минимального элемента последовательности, оканчивающегося на \(25\). В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var09.txt')]
m = min([x for x in nums if x % 100 == 25])
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(9 < x < 100 for x in tr) == 1 and sum(tr) < m:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(247 \quad 41\)
ЕГЭ 2026. Крылов. Вариант 8
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых сумма остатков от деления обоих элементов на \(33\) равна минимальному элементу последовательности. В ответе запишите количество найденных пар чисел, затем максимальный модуль разности элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var08.txt')]
m = min(nums)
q, mr = 0, -float('inf')
for p in zip(nums, nums[1:]):
if sum(x % 33 for x in p) == m:
q += 1
mr = max(mr, abs(p[0] - p[1]))
print(q, mr)
Ответ: \(231 \,\, 98390\)
ЕГЭ 2026. Крылов. Вариант 7
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых сумма остатков от деления обоих элементов на \(44\) равна минимальному элементу последовательности. В ответе запишите количество найденных пар чисел, затем минимальный модуль разности элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var07.txt')]
m = min(nums)
q, mr = 0, float('inf')
for p in zip(nums, nums[1:]):
if sum(x % 44 for x in p) == m:
q += 1
mr = min(mr, abs(p[0] - p[1]))
print(q, mr)
Ответ: \(178 \,\, 593\)
ЕГЭ 2026. Крылов. Вариант 6
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых остаток от деления хотя бы одного из элементов на \(30\) равен минимальному элементу последовательности. В ответе запишите количество найденных пар чисел, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var06.txt')]
m = min(nums)
q, min_sum = 0, float('inf')
for p in zip(nums, nums[1:]):
if any(x % 30 == m for x in p):
q += 1
min_sum = min(min_sum, sum(p))
print(q, min_sum)
Ответ: \(679 \,\, 5644\)
ЕГЭ 2026. Крылов. Вариант 5
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых остаток от деления хотя бы одного из элементов на \(27\) равен минимальному элементу последовательности. В ответе запишите количество найденных пар чисел, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var05.txt')]
m = min(nums)
q, max_sum = 0, -float('inf')
for p in zip(nums, nums[1:]):
if any(x % 27 == m for x in p):
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(704 \,\, 197847\)
ЕГЭ 2026. Крылов. Вариант 4
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых нет нечётных чисел, а сумма элементов тройки больше минимального элемента последовательности, оканчивающегося на \(250.\) В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var04.txt')]
m250 = min([x for x in nums if abs(x) % 1000 == 250])
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if all(x % 2 == 0 for x in tr) and sum(tr) > m250:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(801 \,\, 273218\)
ЕГЭ 2026. Крылов. Вариант 3
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых нет чётных чисел, а сумма элементов тройки больше минимального элемента последовательности, оканчивающегося на \(500.\) В ответе запишите количество найденных троек чисел, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var03.txt')]
m500 = min([x for x in nums if abs(x) % 1000 == 500])
q, min_sum = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if all(x % 2 == 1 for x in tr) and sum(tr) > m500:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(825\) \(-95103\)
ЕГЭ 2026. Крылов. Вариант 2
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых не менее двух из трёх элементов являются трёхзначными числами, а сумма элементов тройки превосходит сумму минимального трёхзначного и максимального трёхзначного элементов последовательности. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var02.txt')]
n2 = [x for x in nums if 99 < abs(x) < 1000]
s2 = min(n2) + max(n2)
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(99 < abs(x) < 1000 for x in tr) > 1 and sum(tr) > s2:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(14 \,\, 97588\)
ЕГЭ 2026. Крылов. Вариант 1
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых не менее двух из трёх элементов являются двузначными числами, а сумма элементов тройки превосходит сумму минимального двузначного и максимального двузначного элементов последовательности. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17var01.txt')]
n2 = [x for x in nums if 9 < abs(x) < 100]
s2 = min(n2) + max(n2)
q, max_sum = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(9 < abs(x) < 100 for x in tr) > 1 and sum(tr) > s2:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(8 \,\, 99191\)
ЕГЭ 2026. Статград. 23.10.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых есть только одно отрицательное число, а сумма пары больше максимального отрицательного трёхзначного элемента последовательности, кратного 6. В ответе запишите количество найденных пар, затем максимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумеваются два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m = max(x for x in nums if x < 0 and x % 6 == 0 and 99 < abs(x) < 1000)
q, ms = 0, 0
for x, y in zip(nums, nums[1:]):
if (x < 0) != (y < 0) and x + y > m:
q += 1
ms = max(ms, x**2 + y**2)
print(q, ms)
Ответ: \(2553 \,\, 19701728317\)
ЕГЭ. Апробация. 14.05.2025-1
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значение от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, в которых все числа одного знака, при этом произведение минимального и максимального элементов тройки больше квадрата минимального элемента последовательности, который оканчивается на \(12\) и является трёхзначным числом. В ответе запишите количество найденных троек чисел, затем минимальное из произведений максимального ми минимального элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m = min([x for x in nums if abs(x) % 100 == 12 and 99 < abs(x) < 1000])
m2 = m**2
q, p = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if (all(x < 0 for x in tr) or all(x > 0 for x in tr)) \
and min(tr) * max(tr) > m2:
q += 1
p = min(p, min(tr) * max(tr))
print(q, p)
Ответ: \(3502 \,\, 842030\)
ЕГЭ. ЕГКР. 19.04.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, в которых ровно один элемент является четырёхзначным числом и оканчивается на \(6,\) а сумма элементов тройки не больше минимального положительного элемента последовательности, являющегося четырёхзначным числом, которое оканчивается на \(6.\) Гарантируется, что такой элемент в последовательности есть.
В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m6 = min(x for x in nums if x > 0 and 999 < x < 10000 and x % 10 == 6)
q = 0
max_sum = -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(999 < abs(x) < 10000 and abs(x) % 10 == 6 for x in tr) == 1 and sum(tr) <= m6:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(507 \,\, 1042\)
ЕГЭ. Досрочный экзамен. 08.04.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых произведение максимального и минимального элементов тройки больше суммы всех отрицательных элементов последовательности. В ответе запишите количество найденных троек, затем абсолютное значение максимальной из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
neg_sum = sum(x for x in nums if x < 0)
q = 0
max_sum = - float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if max(tr) * min(tr) > neg_sum:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, abs(max_sum))
Ответ: \(10007 \,\, 7953\)
ЕГЭ. Основная волна. Пересдача. 03.07.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых элементы не равны, а абсолютное значение их разности делится на минимальный положительный элемент последовательности, кратный \(35.\) Гарантируется, что такой элемент последовательности есть. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m35 = min(x for x in nums if x > 0 and x % 35 == 0)
q, max_sum = 0, -float('inf')
for x, y in zip(nums, nums[1:]):
if x != y and abs(x - y) % m35 == 0:
q += 1
max_sum = max(max_sum, x + y)
print(q, max_sum)
Ответ: \(87 \,\, 184328\)
ЕГЭ. Основная волна. Резерв. 23.06.2025
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых только один из элементов является четырёхзначным числом, а квадрат суммы элементов пары не больше квадрата максимального элемента последовательности, являющегося четырёхзначным числом и оканчивающегося на \(39.\) В ответе запишите количество найденных пар чисел, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def is_4dig(n):
return 999 < abs(n) < 10_000
nums = [int(x) for x in open('17.txt')]
m39 = max(x for x in nums if is_4dig(x) and abs(x) % 100 == 39)
q, max_sum = 0, 0
for x, y in zip(nums, nums[1:]):
if is_4dig(x) != is_4dig(y) and (x + y)**2 <= m39**2:
q += 1
max_sum = max(max_sum, x + y)
print(q, max_sum)
Ответ: \(1591 \,\, 9233\)
ЕГЭ. Основная волна. Резерв. 19.06.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых только один из элементов является пятизначным числом, а квадрат суммы элементов пары превышает квадрат максимального пятизначного элемента последовательности, оканчивающегося на \(37.\) В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def is_5n(n):
return 9999 < abs(n) < 100_000
nums = [int(x) for x in open('17_23376.txt')]
m37 = max(x for x in nums if is_5n(x) and abs(x) % 100 == 37)
q = 0
max_sum = 0
for x, y in zip(nums, nums[1:]):
if is_5n(x) != is_5n(y) and (x + y)**2 > m37**2:
q += 1
max_sum = max(max_sum, x + y)
print(q, max_sum)
Ответ: \(350 \,\, 107294\)
ЕГЭ. Основная волна. 11.06.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых не более двух из трёх элементов являются четырёхзначными числами, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на \(25.\) В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17_23276.txt')]
m25 = max(x for x in nums if abs(x) % 100 == 25)
q = 0
max_sum = 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(999 < abs(x) < 10_000 for x in tr) < 3 and sum(tr) < m25:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(6315 \,\, 84523\)
ЕГЭ. Основная волна. 10.06.2025
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых только один из элементов является трёхзначным числом, а сумма элементов пары кратна минимальному трёхзначному элементу последовательности, оканчивающемуся на \(7.\) В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17_23201.txt')]
m7 = min(x for x in nums if 99 < x < 1000 and x % 10 == 7)
q = 0
min_sum = float('inf')
for x, y in zip(nums, nums[1:]):
if (99 < x < 1000) != (99 < y < 1000) and (x + y) % m7 == 0:
q += 1
min_sum = min(min_sum, x + y)
print(q, min_sum)
Ответ: \(9 \,\, 107\)
ЕГЭ. Апробация. 05.03.2025-2
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых хотя бы одно число отрицательно, а сумма чисел пары меньше количества чисел в последовательности, кратных \(32.\) В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17_2.txt')]
n32 = len([x for x in nums if x % 32 == 0])
q = 0
max_sum = -float('inf')
for p in zip(nums, nums[1:]):
if any(x < 0 for x in p) and sum(p) < n32:
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(4969 \,\, 299\)
ЕГЭ. Апробация. 05.03.2025
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых остаток от деления на \(22\) хотя бы одного из элементов равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
mn = min(nums)
q = 0
min_sum = float('inf')
for p in zip(nums, nums[1:]):
if any(e % 22 == mn for e in p):
q += 1
min_sum = min(min_sum, sum(p))
print(q, min_sum)
Ответ: \(893 \,\, 2027\)
ЕГЭ. Шастин. 7.6.2025
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых количество положительных элементов больше количества отрицательных, а сумма минимального и максимального элементов тройки больше минимального трехзначного положительного элемента последовательности. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17_22471.txt')]
m3 = min(x for x in nums if x > 0 and 99 < x < 1000)
q = 0
max_sum = -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if len([x for x in tr if x > 0]) > len([x for x in tr if x < 0]) \
and min(tr) + max(tr) > m3:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(12546 \,\, 287392\)
ЕГЭ. Шастин. 5.6.2025
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых не более двух из трёх элементов являются четырёхзначными числами, а сумма элементов тройки не меньше минимального пятизначного элемента последовательности, оканчивающегося на две одинаковые цифры. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17_22472.txt')]
m5 = min(x for x in nums if 9999 < abs(x) < 100_000 and str(x)[-2] == str(x)[-1])
q = 0
max_sum = -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(999 < abs(x) < 10_000 for x in tr) < 3 and sum(tr) >= m5:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(27815 \,\, 287392\)
ЕГЭ. Шастин. 3.6.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых только один из элементов оканчивается на ту же цифру, что и сумма всех нечётных пятизначных элементов последовательности. В ответе запишите количество найденных пар, затем значение максимального из произведений элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
d = sum(x for x in nums if 9999 < abs(x) < 100_000) % 10
q = 0
max_prod = -float('inf')
for x, y in zip(nums, nums[1:]):
if (abs(x) % 10 == d) != (abs(y) % 10 == d):
q += 1
max_prod = max(max_prod, x * y)
print(q, max_prod)
Ответ: \(6004 \,\, 9660382446\)
ЕГЭ. Шастин. 1.6.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых абсолютное значение суммы элементов превышает значение среднего арифметического всех элементов последовательности. В ответе запишите количество найденных пар, затем абсолютное значение минимальной из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
avg = sum(nums) / len(nums)
q = 0
min_sum = float('inf')
for p in zip(nums, nums[1:]):
if abs(sum(p)) > avg:
q += 1
min_sum = min(min_sum, sum(p))
print(q, abs(min_sum))
Ответ: \(33368 \,\, 198129\)
ЕГЭ. Статград. Профиль. 12.05.2025-1
Файл содержит последовательность натуральных чисел, не превышающих \(100~000.\) Назовём тройкой три идущих подряд элемента последовательности. Определите количество троек, для которых выполняются следующие условия:
в тройке есть хотя бы два числа, у которых совпадают последние цифры;
последняя цифра максимального числа тройки совпадает с последней цифрой максимального элемента всей последовательности;
в тройке нет чисел, последняя цифра которых совпадает с последней цифрой минимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
max_el = max(nums)
min_el = min(nums)
q, s = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if (tr[0] % 10 == tr[1] % 10) + (tr[0] % 10 == tr[2] % 10) + (tr[1] % 10 == tr[2] % 10) > 1 \
and max(tr) % 10 == max_el % 10 and all(x % 10 != min_el % 10 for x in tr):
q += 1
s = max(s, sum(tr))
print(q, s)
Ответ: \(10 \,\, 197422\)
ЕГЭ. Статград. База. 12.05.2025-1
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых только одно из чисел делится без остатка на сумму всех чётных двузначных чисел последовательности. В ответе запишите количество найденных пар, затем абсолютное значение минимального из произведений элементов таких пар. В данной задаче под парой подразумеваются два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
even = sum(x for x in nums if 9 < abs(x) < 100 and x % 2 == 0)
q, p = 0, float('inf')
for a, b in zip(nums, nums[1:]):
if (a % even == 0) != (b % even == 0):
q += 1
p = min(p, a * b)
print(q, abs(p))
Ответ: \(128 \,\, 7175732740\)
ЕГЭ. Шастин. 7.05.2025
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых модуль суммы отрицательных чисел не больше суммы положительных, а произведение элементов тройки оканчивается на ту же цифру, что и максимальный элемент в последовательности. В ответе запишите количество найденных троек чисел, затем максимальное значение из модулей произведений элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
mn = max(nums) % 10
q = 0
p = 0
for tr in zip(nums, nums[1:], nums[2:]):
if abs(sum(x for x in tr if x < 0)) <= sum(x for x in tr if x >= 0) \
and abs(tr[0] * tr[1] * tr[2]) % 10 == mn:
q += 1
p = max(p, abs(tr[0] * tr[1] * tr[2]))
print(q, p)
Ответ: \(39 \,\, 30322836690237\)
ЕГЭ. Демо-2025
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на \(16\) равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('demo_2025_17.txt')]
mn = min(nums)
q = 0
mx_sum = 0
for x, y in zip(nums, nums[1:]):
if x % 16 == mn or y % 16 == mn:
q += 1
mx_sum = max(mx_sum, x+y)
print(q, mx_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int32_t main() {
ifstream in("demo_2025_17.txt");
vector<int> nums;
int q = 0, max_sum = 0, min_el = 1000*1000;
while(!in.eof()) {
int tmp;
in >> tmp;
nums.push_back(tmp);
min_el = min(min_el, tmp);
}
for(int i = 0; i < nums.size() - 1; i++) {
if (nums[i] % 16 == min_el || nums[i+1] % 16 == min_el) {
q++;
max_sum = max(max_sum, nums[i] + nums[i+1]);
}
}
cout << q << " " << max_sum << '\n';
}
Ответ: \(1214 \,\, 176024\)
ЕГЭ. ЕГКР. 21.12.2024
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, в которых хотя бы один элемент является пятизначным числом и оканчивается на \(43,\) а сумма квадратов элементов тройки не больше квадрата максимального элемента последовательности, являющегося пятизначным числом и оканчивающегося на \(43.\) Гарантируется, что такой элемент в последовательности есть. В ответе запишите количество найденных троек, затем минимальную из сумм квадратов элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m43 = max([x for x in nums if 9999 < x < 100_000 and x % 100 == 43])**2
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if [x for x in tr if 9999 < abs(x) < 100_000 and abs(x) % 100 == 43] \
and sum(x**2 for x in tr) <= m43:
q += 1
min_sum = min(min_sum, sum(x**2 for x in tr))
print(q, min_sum)
Ответ: \(92 \,\, 838850571\)
ЕГЭ. Шастин. 13.03.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых элементы по величине отличаются не более, чем на значение минимального положительного элемента последовательности, оканчивающегося на \(123.\) Гарантируется, что такой элемент в последовательности есть. В ответе запишите количество найденных пар, затем максимальную среди разниц величин элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
mn = min(x for x in nums if x > 0 and x % 1000 == 123)
q = 0
max_diff = -1
for x, y in zip(nums, nums[1:]):
diff = abs(x - y)
if diff <= mn:
q += 1
max_diff = max(max_diff, diff)
print(q, max_diff)
Ответ: \(1293 \,\, 13117\)
ЕГЭ. Статград. 01.04.2025-1
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых сумма двух наибольших чисел больше квадрата количества всех элементов последовательности, абсолютные значения которых являются четырёхзначными числами и оканчиваются на \(3.\) В ответе запишите количество найденных троек, затем абсолютное значение максимальной из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
q2 = sum(999 < abs(x) < 10_000 and abs(x) % 10 == 3 for x in nums) ** 2
q = 0
max_sum = -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
arr = sorted(list(tr))
if arr[1] + arr[2] > q2:
q += 1
max_sum = max(max_sum, sum(arr))
print(q, abs(max_sum))
Ответ: \(7236 \,\, 286698\)
ЕГЭ. Статград. 04.03.2025
Файл содержит последовательность натуральных чисел, не превышающих \(100~000.\) Назовём тройкой три идущих подряд элемента последовательности. Определите количество троек, для которых выполняются следующие условия:
в тройке есть хотя бы два четырёхзначных числа;
в тройке есть число, последняя цифра которого совпадает с последней цифрой максимального элемента всей последовательности;
в тройке нет чисел, последняя цифра которых совпадает с последней цифрой минимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
d_min = min(nums) % 10
d_max = max(nums) % 10
q = 0
max_sum = 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(999 < x < 10_000 for x in tr) > 1 \
and any(x % 10 == d_max for x in tr) \
and all(x % 10 != d_min for x in tr):
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(46 \,\, 113153\)
ЕГЭ. Статград. 28.01.2025-1
Файл содержит последовательность натуральных чисел, не превышающих \(100~000.\) Назовём тройкой три идущих подряд элемента последовательности. Определите количество троек, для которых выполняются следующие условия:
в тройке есть четырёхзначные числа;
в тройке не более одного числа, у которого остаток от деления на \(5\) равен остатку от деления на \(5\) минимального элемента всей последовательности;
в тройке не менее двух чисел, у которых остаток от деления на \(7\) равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
r5 = min(nums) % 5
r7 = max(nums) % 7
q = 0
max_sum = 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(999 < x < 10_000 for x in tr) and sum(x % 5 == r5 for x in tr) < 2 \
and sum(x % 7 == r7 for x in tr) > 1:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(103 \,\, 194888\)
ЕГЭ. Статград. 17.12.2024
Файл содержит последовательность натуральных чисел, не превышающих \(100~000.\) Назовём тройкой три идущих подряд элемента последовательности. Определите количество троек, для которых выполняются следующие условия:
остаток от деления на \(3\) ровно одного числа из тройки равен остатку от деления на \(3\) минимального элемента всей последовательности;
остаток от деления на \(7\) хотя бы двух чисел из тройки равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем максимальную величину суммы элементов этих троек
Решение:
Python
base = ''
a = [int(x) for x in open(base + '17.txt')]
m3 = min(a) % 3
m7 = max(a) % 7
q = 0
for tr in zip(a, a[1:], a[2:]):
q += sum(x % 3 == m3 for x in tr) == 1 and sum(x % 7 == m7 for x in tr) > 1
print(q)
Ответ: \(228\)
ЕГЭ. Статград. 24.10.2024-1
Файл содержит последовательность натуральных чисел, не превышающих \(100~000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, для которых выполняются следующие условия:
остаток от деления на \(3\) хотя бы одного числа из пары равен остатку от деления на \(3\) минимального элемента всей последовательности;
остаток от деления на \(7\) хотя бы одного числа из пары равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных пар, затем максимальную величину суммы элементов этих пар.
Решение:
Python
base = ''
arr = [int(x) for x in open(base + '17.txt')]
mn3 = min(arr) % 3
mx7 = max(arr) % 7
q = 0
mx_sum = 0
for x, y in zip(arr, arr[1:]):
if (x % 3 == mn3 or y % 3 == mn3) and (x % 7 == mx7 or y % 7 == mx7):
q += 1
mx_sum = max(mx_sum, x + y)
print(q, mx_sum)
Ответ: \(1415 \,\, 199020\)
ЕГЭ. Шастин. 9.2.2025
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно два числа являются трёхзначными, а произведение элементов тройки больше суммы всех четырехзначных элементов последовательности. В ответе запишите количество найденных троек чисел, затем абсолютное значение минимального из произведений элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
s4 = sum(x for x in nums if 999 < abs(x) < 10_000)
q = 0
min_prod = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
pr = tr[0] * tr[1] * tr[2]
if sum(99 < abs(x) < 1000 for x in tr) == 2 and pr > s4:
q += 1
min_prod = min(min_prod, pr)
print(q, abs(min_prod))
Ответ: \(566 \,\, 1462000\)
ЕГЭ. Шастин. 19.01.2025
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности, в которых одно из чисел отрицательно, а другое положительно, и при этом сумма чисел пары меньше количества чисел последовательности, оканчивающихся на \(7.\) В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
q7 = sum(abs(x) % 10 == 7 for x in nums)
q = 0
msum = 0
for p in zip(nums, nums[1:]):
x, y = p
if (x > 0 and y < 0 or x < 0 and y > 0) and sum(p) < q7:
q += 1
msum = max(msum, sum(p))
print(q, msum)
Ответ: \(2452 \,\, 962\)
ЕГЭ. Шастин. 18.12.2024 (Д. Бахтиев)
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, в которых хотя бы два числа из трёх не содержат нулей в своей записи, а сумма тройки меньше половины значения максимального элемента последовательности. В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
mx2 = max(nums) / 2
q = 0
max_sum = -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(str(x).count('0') == 0 for x in tr) > 1 \
and sum(tr) < mx2:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(5072 \,\, 49976\)
ЕГЭ. Шастин. 30.11.2024 (Л. Шастин)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых количество отрицательных чисел больше количества положительных, а сумма элементов тройки оканчивается на ту же цифру, что и минимальный элемент в последовательности. В ответе запишите количество найденных троек чисел, затем максимальное значение из модулей сумм элементов таких троек. В данной задаче под тойкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
min_dig = abs(min(nums)) % 10
q = 0
max_sum = -10**1000
for t in zip(nums, nums[1:], nums[2:]):
if sum(1 for x in t if x < 0) > sum(1 for x in t if x > 0) \
and abs(sum(t)) % 10 == min_dig:
q += 1
max_sum = max(max_sum, abs(sum(t)))
print(q, max_sum)
Ответ: \(440 \,\, 210834\)
ЕГЭ. Шастин. 6.11.2024 (Л. Шастин)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых хотя бы один из трёх элементов является пятизначным числом, а произведение элементов кратно минимальному элементу последовательности, оканчивающемуся на \(7\). В ответе запишите количество найденных троек чисел, затем максимальное из произведений элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
arr = [int(x) for x in open(base + '17.txt')]
m7 = min(x for x in arr if abs(x) % 10 == 7)
q = 0
mx = -10**10000
for t in zip(arr, arr[1:], arr[2:]):
p = t[0] * t[1] * t[2]
if any(9999 < abs(x) < 100000 for x in t) and p % m7 == 0:
q += 1
mx = max(mx, p)
print(q, mx)
Ответ: \(3 \,\, 54248777901150\)
ЕГЭ. Шастин. 18.10.2024 (Л. Шастин)
В файле содержится последовательность натуральных чисел, которые нумеруются, начиная с единицы. Определите количество пар элементов последовательности, сумма номеров которых оканчивается на ту же цифру, что и максимальный элемент последовательности. В ответе запишите количество найденных пар, затем минимальное значение среди модулей разности суммы элементов и суммы номеров таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
arr = [int(x) for x in open('17.txt')]
mx = max(arr) % 10
size = len(arr)
q = 0
min_mod = 100000000
for i in range(size - 1):
if (2 * i + 3) % 10 == mx:
q += 1
min_mod = min(min_mod, abs(arr[i] + arr[i+1] - (2 * i + 3)))
print(q, min_mod)
Ответ: \(1000 \,\, 811\)
ЕГЭ. Шастин. 4.10.202 (Д. Бахтиев)
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, сумма цифр элементов которых равна минимальному положительному элементу последовательности, оканчивающемуся на \(4\). В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def sum_digs(n):
res = 0
n = abs(n)
while n:
res += n % 10
n //= 10
return res
nums = [int(x) for x in open('17.txt')]
m4 = min([x for x in nums if x > 0 and x % 10 == 4])
q = 0
max_sum = 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum([sum_digs(x) for x in tr]) == m4:
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(11 \,\, 180738\)
ЕГЭ. Шастин. 19.09.2024 (Л. Шастин)
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых сумма последних цифр элементов равна количеству двузначных чисел в последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
arr = [int(x) for x in open('17.txt')]
n1 = len([x for x in arr if 9 < x < 100])
min_sum = 10**100
q = 0
for x, y in zip(arr, arr[1:]):
if x % 10 + y % 10 == n1:
q += 1
min_sum = min(min_sum, x + y)
print(q, min_sum)
Ответ: \(243 \,\, 3614\)
ЕГЭ. Шастин. 29.08.2024
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых сумма остатков от деления элементов на \(77\) равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение C++:
C++
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int32_t main() {
ifstream in("17.txt");
vector<int> v;
int p = 0, max_sum = 0, min_el = 1000000;
while(!in.eof()) {
int t;
in >> t;
v.push_back(t);
min_el = min(min_el, t);
}
for(int i = 0; i < v.size() - 1; i++) {
if (v[i] % 77 + v[i+1] % 77 == min_el) {
p++;
max_sum = max(max_sum, v[i] + v[i+1]);
}
}
cout << p << " " << max_sum << '\n';
}
Ответ: \(35 \,\, 186613\)
ЕГЭ. Поляков-8814
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно одно число не является отрицательным, а сумма элементов тройки не больше максимального элемента последовательности, в десятичной записи которого содержится \(38.\) В ответе запишите количество найденных троек, затем максимальную из тех сумм элементов таких троек, десятичная запись которых начинается на \(38.\) В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m38 = max(x for x in nums if '38' in str(abs(x)))
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(t >= 0 for t in tr) == 1 and sum(tr) <= m38:
q += 1
s = sum(tr)
if str(abs(s))[:2] == '38':
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(3009 \,\, 38806\)
ЕГЭ. Поляков-8813
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно одно число является отрицательным, а сумма элементов тройки не меньше максимального элемента последовательности, начинающегося на \(45.\) В ответе запишите количество найденных троек, затем минимальную из тех сумм элементов таких троек, которые заканчиваются на \(45.\) В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m45 = max(x for x in nums if str(abs(x))[:2] == '45')
q, min_sum = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(t < 0 for t in tr) == 1 and sum(tr) >= m45:
q += 1
s = sum(tr)
if abs(s) % 100 == 45:
min_sum = min(sum(tr), min_sum)
print(q, min_sum)
Ответ: \(1588 \,\, 49345\)
ЕГЭ. Поляков-8812
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно одно число не является отрицательным, а сумма элементов тройки не больше максимального элемента последовательности, в десятичной записи которого содержится \(55.\) В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m55 = max(x for x in nums if '55' in str(abs(x)))
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(t >= 0 for t in tr) == 1 and sum(tr) <= m55:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(3009 \,\, 94935\)
ЕГЭ. Поляков-8811
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно одно число является отрицательным, а сумма элементов тройки не меньше максимального элемента последовательности, начинающегося на \(31.\) В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m31 = max(x for x in nums if str(abs(x))[:2] == '31')
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(t < 0 for t in tr) == 1 and sum(tr) >= m31:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(1882 \,\, 190888\)
ЕГЭ. Поляков-8810
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно одно число является отрицательным, а сумма элементов тройки не больше максимального элемента последовательности, делящегося на \(23.\) В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m23 = max(x for x in nums if abs(x) % 23 == 0)
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(t < 0 for t in tr) == 1 and sum(tr) <= m23:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(2477 \,\, 99488\)
ЕГЭ. Поляков-8809
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ни одно число не является отрицательным, а сумма элементов тройки не меньше максимального элемента последовательности, оканчивающегося на \(11.\) В ответе запишите количество найденных троек, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m11 = max(x for x in nums if abs(x) % 100 == 11)
q, min_sum = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if all(t >= 0 for t in tr) and sum(tr) >= m11:
q += 1
min_sum = min(sum(tr), min_sum)
print(q, min_sum)
Ответ: \(879 \,\, 97103\)
ЕГЭ. Поляков-8808
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ни одно число не является отрицательным, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на \(61.\) В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m61 = max(x for x in nums if abs(x) % 100 == 61)
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if all(t >= 0 for t in tr) and sum(tr) <= m61:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(155 \,\, 97618\)
ЕГЭ. Поляков-8647
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество троек элементов последовательности, в которых не менее двух трёхзначных чётных чисел, а сумма элементов тройки не меньше минимального положительного четырёхзначного элемента последовательности. В ответе запишите количество найденных троек, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8646.txt')]
m = min([x for x in nums if x > 0 and 999 < x < 10_000])
q, s = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
a = [x for x in tr if 99 < abs(x) < 1000 and x % 2 == 0]
if len(a) > 1 and sum(tr) >= m:
q += 1
s = min(s, sum(tr))
print(q, s)
Ответ: \(16 \,\, 1571\)
ЕГЭ. Поляков-8646
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество троек элементов последовательности, в которых не более двух трёхзначных нечётных чисел, а сумма элементов тройки не меньше минимального положительного трёхзначного элемента последовательности. В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8646.txt')]
m = min([x for x in nums if x > 0 and 99 < x < 1000])
q, s = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
a = [x for x in tr if 99 < abs(x) < 1000 and x % 2 == 1]
if len(a) < 3 and sum(tr) >= m:
q += 1
s = max(s, sum(tr))
print(q, s)
Ответ: \(4900 \,\, 29196\)
ЕГЭ. Поляков-8645
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых есть ровно одно трёхзначное число, оканчивающееся на \(17,\) а сумма элементов тройки больше максимального отрицательного четырёхзначного элемента последовательности, кратного \(9.\) В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8644.txt')]
m9 = max([x for x in nums if x < 0 and 999 < abs(x) < 10_000 and x % 9 == 0])
q, s = 0, -float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
a = [x for x in tr if 99 < abs(x) < 1000 and abs(x) % 100 == 17]
if len(a) == 1 and sum(tr) > m9:
q += 1
s = max(s, sum(tr))
print(q, s)
Ответ: \(5 \,\, 127669\)
ЕГЭ. Поляков-8644
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых есть только одно число, оканчивающееся на \(12,\) а сумма пары больше максимального отрицательного четырёхзначного элемента последовательности, кратного \(12.\) В ответе запишите количество найденных пар, затем максимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумеваются два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8644.txt')]
m12 = max([x for x in nums if x < 0 and 999 < abs(x) < 10_000 and x % 12 == 0])
q, s = 0, 0
for x, y in zip(nums, nums[1:]):
if (abs(x) % 100 == 12) != (abs(y) % 100 == 12) \
and x + y > m12:
q += 1
s = max(s, x**2 + y**2)
print(q, s)
Ответ: \(111 \,\, 19071929033\)
ЕГЭ. Поляков-8469 (О. Лысенков)
В файле содержится последовательность натуральных чисел, не превышающих \(10~000.\) Определите количество четвёрок последовательности, в которых ровно два элемента больше максимального элемента последовательности, оканчивающегося на \(37,\) и ровно один элемент оканчивается на \(2\) одинаковые цифры. В ответе запишите количество найденных четвёрок, а затем сумму только тех элементов найденных четвёрок, которые оканчиваются на \(2\) одинаковые цифры. В данной задаче под четвёркой подразумевается четыре идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8469.txt')]
m37 = max([x for x in nums if x % 100 == 37])
q, s = 0, 0
for ch in zip(nums, nums[1:], nums[2:], nums[3:]):
snum = [str(x) for x in ch]
a1 = [x for x in ch if x > m37]
a2 = [z for z in snum if len(z) > 1 and z[-1] == z[-2]]
if len(a1) == 2 and len(a2) == 1:
q += 1
s += int(a2[0])
print(q, s)
Ответ: \(13 \,\, 110680\)
ЕГЭ. Поляков-8468 (О. Лысенков)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество пар элементов последовательности, в которых ровно один элемент больше максимального элемента последовательности, оканчивающегося на \(93,\) и хотя бы один элемент пары начинается на цифру \(9.\) Под парой подразумеваются два идущих подряд элемента. В ответе запишите количество найденных пар, затем сумму только тех элементов найденных пар, которые больше значения максимального элемента последовательности, оканчивающегося на \(93.\) В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8468.txt')]
m93 = max([x for x in nums if x % 100 == 93])
q, s = 0, 0
for x, y in zip(nums, nums[1:]):
if (x > m93) != (y > m93) and \
(str(x)[0] == '9' or str(y)[0] == '9'):
q += 1
s += x if x > m93 else y
print(q, s)
Ответ: \(783 \,\, 78138677\)
ЕГЭ. Поляков-8467 (О. Лысенков)
В файле содержится последовательность натуральных чисел, не превышающих \(10~000.\) Определите количество троек элементов последовательности, в которых ровно два элемента имеют остаток при делении на \(40\) равный \(15,\) и не более двух элементов являются кратными \(7.\) В ответе запишите количество найденных троек, затем сумму элементов данных троек, у которых остаток при делении на \(40\) не равен \(15.\) В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8467.txt')]
q, s = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 40 == 15 for x in tr) == 2 and \
sum(x % 7 == 0 for x in tr) < 3:
q += 1
s += [x for x in tr if x % 40 != 15][0]
print(q, s)
Ответ: \(22 \,\, 134374\)
ЕГЭ. Поляков-8466 (О. Лысенков)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество пар последовательности, в которых ровно один элемент имеет остаток при делении на \(80\) равный \(17,\) и оба элемента являются кратными \(7.\) В ответе запишите количество найденных пар, затем сумму элементов данных пар, у которых остаток при делении на \(80\) равен \(17.\) В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8466.txt')]
q, s = 0, 0
for x, y in zip(nums, nums[1:]):
if (x % 80 == 17) != (y % 80 == 17) and \
all(z % 7 == 0 for z in (x, y)):
q += 1
s += x if x % 80 == 17 else y
print(q, s)
Ответ: \(48 \,\, 2186016\)
ЕГЭ. Поляков-8465 (О. Лысенков)
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно у одного элемента первая и последняя цифра совпадают и ровно два элемента являются четырёхзначными числами, у которых цифра, находящаяся в разряде сотен, равна \(2.\) В ответе запишите количество найденных троек чисел, затем сумму максимальных элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8465.txt')]
q, smax = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
snums = [str(abs(x)) for x in tr]
if sum(s[0] == s[-1] for s in snums) == 1 \
and sum(len(s) == 4 and s[1] == '2' for s in snums) == 2:
q += 1
smax += max(tr)
print(q, smax)
Ответ: \(1 \,\, 78777\)
ЕГЭ. Поляков-8464 (О. Лысенков)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество троек элементов последовательности, в которых ровно у одного элемента первая и последняя цифра равны и ровно два элемента являются пятизначными числами, у которых цифра, находящаяся в разряде тысяч, равна \(7.\) В ответе запишите количество найденных троек чисел, затем сумму максимальных элементов таких троек.
Решение:
Python
nums = [int(x) for x in open('8464.txt')]
q, smax = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
snums = [str(x) for x in tr]
if sum(s[0] == s[-1] for s in snums) == 1 \
and sum(len(s) == 5 and s[1] == '7' for s in snums) == 2:
q += 1
smax += max(tr)
print(q, smax)
Ответ: \(529 \,\, 40279762\)
ЕГЭ. Поляков-8463 (О. Лысенков)
В файле содержится последовательность натуральных чисел, не превышающих \(10~000.\) Определите количество троек элементов последовательности, в которых ровно у одного элемента первая и последняя цифра совпадают и ровно два элемента являются четырёхзначными числами, у которых цифра, находящаяся в разряде сотен, равна \(2.\) В ответе запишите количество найденных троек чисел, затем сумму максимальных элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8463.txt')]
q, smax = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
st = [str(x) for x in tr]
if sum(s[0] == s[-1] for s in st) == 1 \
and sum(len(s) == 4 and s[1] == '2' for s in st) == 2:
q += 1
smax += max(tr)
print(q, smax)
Ответ: \(50 \,\, 393899\)
ЕГЭ. Открытый вариант ФИПИ. 28.04.25
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, в которых все числа одного знака, при этом произведение минимального и максимального элементов тройки больше квадрата минимального элемента последовательности, который оканчивается на 15 и является трёхзначным числом. В ответе запишите количество найденных троек чисел, затем минимальное из произведений максимального и минимального элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8185.txt')]
m15 = min([x for x in nums if abs(x) % 100 == 15 and 99 < abs(x) < 1000])**2
q, mprod = 0, float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
m, n = min(tr), max(tr)
if (all(x < 0 for x in tr) or all(x > 0 for x in tr)) \
and m * n > m15:
q += 1
mprod = min(mprod, m * n)
print(q, mprod)
Ответ: \(3507 \,\, 863808\)
ЕГЭ. Поляков-7989
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество троек элементов последовательности, для которых выполняются следующие условия:
в тройке есть трёхзначные числа;
в тройке не более одного числа, у которого сумма цифр равна сумме цифр \(13\)-го по счёту элемента последовательности, делящегося на \(13;\)
в тройке не менее двух чисел, у которых сумма цифр равна сумме цифр \(25\)-го по счёту элемента последовательности, делящегося на \(25.\)
В ответе запишите два числа: сначала количество найденных троек, затем среднее арифметическое сумм элементов этих троек, округленное до ближайшего меньшего целого числа. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
n13 = [x for x in nums if x % 13 == 0]
n25 = [x for x in nums if x % 25 == 0]
s13 = sum(int(z) for z in str(n13[12]))
s25 = sum(int(z) for z in str(n25[24]))
q, sum_el = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(99 < x < 1000 for x in tr) \
and sum(sum(int(z) for z in str(x)) == s13 for x in tr) < 2 \
and sum(sum(int(z) for z in str(x)) == s25 for x in tr) > 1:
q += 1
sum_el += sum(tr)
print(q, int(sum_el / q))
Ответ: \(118 \,\, 12695\)
ЕГЭ. Поляков-7988
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество троек элементов последовательности, для которых выполняются следующие условия:
в тройке есть трёхзначные числа;
в тройке не более одного числа, у которого сумма цифр равна количеству элементов всей последовательности, делящихся на \(531;\)
в тройке не менее двух чисел, у которых сумма цифр равна количеству элементов всей последовательности, делящихся на \(773.\)
В ответе запишите два числа: сначала количество найденных троек, затем среднее арифметическое сумм элементов этих троек, округленное до ближайшего меньшего целого числа. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
q531 = sum(x % 531 == 0 for x in nums)
q773 = sum(x % 773 == 0 for x in nums)
q, sum_el = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(99 < x < 1000 for x in tr) \
and sum(sum(int(z) for z in str(x)) == q531 for x in tr) < 2 \
and sum(sum(int(z) for z in str(x)) == q773 for x in tr) > 1:
q += 1
sum_el += sum(tr)
print(q, int(sum_el / q))
Ответ: \(96 \,\, 29445\)
ЕГЭ. Поляков-7987
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество троек элементов последовательности, для которых выполняются следующие условия:
в тройке есть трёхзначные числа;
в тройке не более одного числа, у которого остаток от деления на \(5\) равен остатку от деления на \(7\) минимального элемента всей последовательности;
в тройке не менее двух чисел, у которых остаток от деления на \(7\) равен остатку от деления на \(5\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем среднее арифметическое сумм элементов этих троек, округленное до ближайшего меньшего целого числа. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m7 = min(nums) % 7
m5 = max(nums) % 5
q, sum_el = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(99 < x < 1000 for x in tr) and sum(x % 5 == m7 for x in tr) < 2 \
and sum(x % 7 == m5 for x in tr) > 1:
q += 1
sum_el += sum(tr)
print(q, int(sum_el / q))
Ответ: \(591 \,\, 33559\)
ЕГЭ. Поляков-7986
В файле содержится последовательность натуральных чисел, не превышающих \(100~000.\) Определите количество троек элементов последовательности, для которых выполняются следующие условия:
в тройке есть четырёхзначные числа;
в тройке не более одного числа, у которого остаток от деления на \(11\) равен остатку от деления на \(11\) минимального элемента всей последовательности;
в тройке не менее двух чисел, у которых остаток от деления на \(7\) равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем среднее арифметическое сумм элементов этих троек, округленное до ближайшего меньшего целого числа. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m11 = min(nums) % 11
m7 = max(nums) % 7
q, sum_el = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(999 < x < 10_000 for x in tr) and sum(x % 11 == m11 for x in tr) < 2 \
and sum(x % 7 == m7 for x in tr) > 1:
q += 1
sum_el += sum(tr)
print(q, int(sum_el / q))
Ответ: \(589 \,\, 38508\)
ЕГЭ. Поляков-7985
В файле содержится последовательность целых чисел, не превышающих по модулю \(100~000.\) Определите количество троек элементов последовательности, для которых выполняются следующие условия:
в тройке есть четырёхзначные числа;
в тройке не более одного числа, которое заканчивается на ту же цифру, что и максимальный по модулю элемент всей последовательности;
в тройке не менее одного числа, которое заканчивается на ту же цифру, что и максимальный элемент всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем среднее арифметическое сумм элементов этих троек, округленное до ближайшего меньшего целого числа. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
max_el = max(abs(x) for x in nums) % 10
d = max(nums) % 10
q = 0
sum_tr = 0
for tr in zip(nums, nums[1:], nums[2:]):
if any(999 < abs(x) < 10_000 for x in tr) and sum(abs(x) % 10 == max_el for x in tr) < 2\
and sum(abs(x) % 10 == d for x in tr) > 0:
q += 1
sum_tr += sum(tr)
print(q, int(sum_tr / q))
Ответ: \(605 \,\, 8982\)
Задание 11. Информатика. ЕГЭ. Поляков-7821
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество троек, для которых выполняются следующие условия:
остаток от деления на \(11\) ровно одного числа из тройки равен остатку от деления на \(5\) минимального элемента последовательности, который записывается в шестеричной системе счисления как четырёхзначное число;
остаток от деления на \(7\) ровно одного числа из тройки равен остатку от деления на \(13\) минимального элемента последовательности, который записывается в девятеричной системе счисления как трёхзначное число.
В ответе запишите два числа: сначала количество найденных троек, затем минимальную величину суммы элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m5 = min(x for x in nums if 6**3 <= x < 6**4) % 5
m13 = min(x for x in nums if 9**2 <= x < 9**3) % 13
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 11 == m5 for x in tr) == 1 and sum(x % 7 == m13 for x in tr) == 1:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(1490 \,\, 126\)
ЕГЭ. Поляков-7820
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество троек, для которых выполняются следующие условия:
остаток от деления на \(7\) ровно одного числа из тройки равен остатку от деления на \(11\) минимального элемента последовательности, который записывается в десятичной системе счисления как четырёхзначное число;
остаток от деления на \(5\) ровно одного числа из тройки равен остатку от деления на \(3\) минимального элемента последовательности, который записывается в десятичной системе счисления как двузначное число.
В ответе запишите два числа: сначала количество найденных троек, затем минимальную величину суммы элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m3 = min(x for x in nums if 9 < x < 100) % 3
m11 = min(x for x in nums if 999 < x < 10_000) % 11
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 7 == m11 for x in tr) == 1 and sum(x % 5 == m3 for x in tr) == 1:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(2465 \,\, 115\)
ЕГЭ. Поляков-7819
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество троек, для которых выполняются следующие условия:
остаток от деления на \(3\) ровно одного числа из тройки равен остатку от деления на \(11\) максимального элемента всей последовательности;
остаток от деления на \(11\) ровно одного числа из тройки равен остатку от деления на \(3\) минимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем минимальную величину суммы элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m3 = min(nums) % 3
m11 = max(nums) % 11
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 3 == m11 for x in tr) == 1 and sum(x % 11 == m3 for x in tr) == 1:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(1949 \,\, 115\)
ЕГЭ. Поляков-7818
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество троек, для которых выполняются следующие условия:
остаток от деления на \(5\) ровно одного числа из тройки равен остатку от деления на \(5\) минимального элемента всей последовательности;
остаток от деления на \(7\) ровно одного числа из тройки равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных троек, затем минимальную величину суммы элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m5 = min(nums) % 5
m7 = max(nums) % 7
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 5 == m5 for x in tr) == 1 and sum(x % 7 == m7 for x in tr) == 1:
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(2424 \,\, 115\)
ЕГЭ. Поляков-7817
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество пар, для которых выполняются следующие условия:
остаток от деления на \(11\) хотя бы одного числа из пары равен остатку от деления на \(5\) минимального элемента последовательности, который записывается в шестеричной системе счисления как четырёхзначное число;
остаток от деления на \(7\) хотя бы одного числа из пары равен остатку от деления на \(13\) минимального элемента последовательности, который записывается в девятеричной системе счисления как трёхзначное число.
В ответе запишите два числа: сначала количество найденных пар, затем максимальную величину суммы элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m5 = min(x for x in nums if 6**3 <= x < 6**4) % 5
m13 = min(x for x in nums if 9**2 <= x < 9**3) % 13
q = 0
max_sum = 0
for pair in zip(nums, nums[1:]):
if any(x % 11 == m5 for x in pair) and any(x % 7 == m13 for x in pair):
q += 1
max_sum = max(max_sum, sum(pair))
print(q, max_sum)
Ответ: \(1012 \,\, 18159\)
ЕГЭ. Поляков-7816
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество пар, для которых выполняются следующие условия:
остаток от деления на \(7\) хотя бы одного числа из пары равен остатку от деления на \(11\) минимального элемента последовательности, который записывается в десятичной системе счисления как четырёхзначное число;
остаток от деления на \(5\) хотя бы одного числа из пары равен остатку от деления на \(3\) максимального элемента последовательности, который записывается в десятичной системе счисления как двузначное число.
В ответе запишите два числа: сначала количество найденных пар, затем максимальную величину суммы элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m3 = max(x for x in nums if 9 < x < 100) % 3
m11 = min(x for x in nums if 999 < x < 10_000) % 11
q = 0
max_sum = 0
for pair in zip(nums, nums[1:]):
if any(x % 7 == m11 for x in pair) and any(x % 5 == m3 for x in pair):
q += 1
max_sum = max(max_sum, sum(pair))
print(q, max_sum)
Ответ: \(1903 \,\, 18676\)
ЕГЭ. Поляков-7815
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество пар, для которых выполняются следующие условия:
остаток от деления на \(3\) хотя бы одного числа из пары равен остатку от деления на \(11\) максимального элемента всей последовательности;
остаток от деления на \(11\) хотя бы одного числа из пары равен остатку от деления на \(3\) минимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных пар, затем максимальную величину суммы элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m3 = min(nums) % 3
m11 = max(nums) % 11
q = 0
max_sum = 0
for pair in zip(nums, nums[1:]):
if any(x % 3 == m11 for x in pair) and any(x % 11 == m3 for x in pair):
q += 1
max_sum = max(max_sum, sum(pair))
print(q, max_sum)
Ответ: \(1865 \,\, 19343\)
ЕГЭ. Поляков-7814
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество пар, для которых выполняются следующие условия:
остаток от деления на \(5\) хотя бы одного числа из пары равен остатку от деления на \(5\) минимального элемента всей последовательности;
остаток от деления на \(7\) хотя бы одного числа из пары равен остатку от деления на \(7\) максимального элемента всей последовательности.
В ответе запишите два числа: сначала количество найденных пар, затем максимальную величину суммы элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m5 = min(nums) % 5
m7 = max(nums) % 7
q = 0
max_sum = 0
for pair in zip(nums, nums[1:]):
if any(x % 5 == m5 for x in pair) and any(x % 7 == m7 for x in pair):
q += 1
max_sum = max(max_sum, sum(pair))
print(q, max_sum)
Ответ: \(1949 \,\, 19942\)
ЕГЭ. Поляков-7718
В файле содержится последовательность натуральных чисел, не превышающих \(10000.\) Определите количество четверок элементов последовательности, в которых количество элементов, оканчивающихся на \(2,\) нечетно и все четыре элемента меньше максимального элемента, оканчивающегося на \(3.\) В ответе запишите количество найденных четверок, затем минимальную из сумм элементов таких четверок. В данной задаче под четверкой подразумевается четыре подряд идущих элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
mx3 = max(x for x in nums if x % 10 == 3)
q = 0
min_sum = float('inf')
for quad in zip(nums, nums[1:], nums[2:], nums[3:]):
if sum(x % 10 == 2 for x in quad) % 2 == 1 and all(x < mx3 for x in quad):
q += 1
min_sum = min(min_sum, sum(quad))
print(q, min_sum)
Ответ: \(49 \,\, 715\)
ЕГЭ. Поляков-7685
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(1000\). Определите наиболее часто встречающийся наибольший общий делитель (НОД) среди пар последовательности. В ответе запишите найденный НОД, затем максимальную из сумм элементов, у которых такой НОД. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
from math import gcd
base = ''
nums = [int(x) for x in open(base + '17.txt')]
d = dict()
sum_d = dict()
for p in zip(nums, nums[1:]):
g = gcd(*p)
d[g] = d.get(g, 0) + 1
sum_d[g] = max(sum_d.get(g, 0), sum(p))
pop_nod = 0
q = 0
for k, v in d.items():
if v > q:
q = v
pop_nod = k
print(pop_nod, sum_d[pop_nod])
Ответ: \(17 \,\, 1649\)
ЕГЭ. Поляков-7684
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(10~000\). Определите количество четверок элементов последовательности, в которых количество четных элементов нечетно и все четыре элемента меньше максимального элемента, оканчивающегося на \(1\). В ответе запишите количество найденных четверок, затем минимальную из сумм элементов таких четверок. В данной задаче под четверкой подразумевается четыре подряд идущих элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
mx1 = max([x for x in nums if x % 10 == 1])
min_sum = 1000000
q = 0
for p in zip(nums, nums[1:], nums[2:], nums[3:]):
if sum(x % 2 == 0 for x in p) % 2 and all(x < mx1 for x in p):
q += 1
min_sum = min(min_sum, sum(p))
print(q, min_sum)
Ответ: \(117 \,\, 559\)
ЕГЭ. Поляков-7683
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(1000\). Определите количество пар элементов последовательности, в которых ровно одно число из пары не меньше, чем минимальный элемент последовательности, кратный \(3\), но не больше, чем максимальный элемент последовательности, оканчивающийся на \(3\). В ответе запишите количество найденных пар, затем минимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
min3 = min([x for x in nums if x % 3 == 0])
max3 = max([x for x in nums if x % 10 == 3])
q = 0
min_sum = 10000000
for p in zip(nums, nums[1:]):
if sum(min3 <= x <= max3 for x in p) % 2:
q += 1
min_sum = min(min_sum, sum(x**2 for x in p))
print(q, min_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
#include<string>
using namespace std;
int min3 = 1000000;
int max3 = 0;
bool valid(int x, int y) {
return (x >= min3 && x <= max3) ^ (y >= min3 && y <= max3);
}
int32_t main() {
string base = "";
int q = 0, min_sum = 1000000;
fstream in(base + "17.txt");
vector<int> v;
while(!in.eof()) {
int t;
in >> t;
v.push_back(t);
if (t % 3 == 0) min3 = min(min3, t);
if (t % 10 == 3) max3 = max(max3, t);
}
for(int i = 0; i < v.size() - 1; i++)
if (valid(v[i], v[i+1])) {
q++;
min_sum = min(min_sum, v[i]*v[i] + v[i+1]*v[i+1]);
}
cout << q << " " << min_sum << endl;
}
Ответ: \(24 \,\, 10309\)
ЕГЭ. Поляков-7682
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(1000\). Определите количество пар элементов последовательности, в которых элементы пары взаимно просты (т.е. не имеют общих делителей, кроме \(1\)) и имеют разную четность. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
from math import gcd
base = ''
nums = [int(x) for x in open(base + '17.txt')]
q = 0
min_sum = 10000000
for x, y in zip(nums, nums[1:]):
if gcd(x, y) == 1 and x % 2 != y % 2:
q += 1
min_sum = min(min_sum, x + y)
print(q, min_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
#include<string>
using namespace std;
int gcd(int x, int y) {
while (x != y) {
if (x > y) {
int t = x % y;
x = (t) ? t : y;
}
else {
int t = y % x;
y = (t) ? t : x;
}
}
return x;
}
int32_t main() {
vector<int> nums;
string base = "";
ifstream in(base + "17.txt");
int min_sum = 1000000, q = 0;
while (!in.eof()) {
int t;
in >> t;
nums.push_back(t);
}
for(int i = 0; i < nums.size() - 1; i++)
if (gcd(nums[i], nums[i+1]) == 1 && nums[i] % 2 != nums[i+1] % 2) {
q++;
min_sum = min(min_sum, nums[i] + nums[i+1]);
}
cout << q << " " << min_sum << endl;
}
Ответ: \(2 \,\, 953\)
ЕГЭ. Поляков-7681
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(1000\). Определите количество пар последовательности, у которых старшие разряды обоих чисел совпадают, хотя бы одно из чисел оканчивается на \(7\) и является трёхзначным числом, а их сумма меньше максимального элемента последовательности, оканчивающегося на \(7\). В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def mx_raz(n):
while n > 9:
n //= 10
return n
def valid(a, b):
return mx_raz(a) == mx_raz(b) and any(x % 10 == 7 and 99 < x < 1000 for x in [a, b])
base = ''
nums = [int(x) for x in open(base + '17.txt')]
max_el = max([x for x in nums if x % 10 == 7])
max_sum, q = 0, 0
for x, y in zip(nums, nums[1:]):
if valid(x, y) and x + y < max_el:
q += 1
max_sum = max(max_sum, x + y)
print(q, max_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
#include<string>
using namespace std;
int mx_raz(int n) {
while (n > 9)
n /= 10;
return n;
}
bool valid(int a, int b) {
return mx_raz(a) == mx_raz(b) && (a % 10 == 7 && a > 99 && a < 1000 ||
b % 10 == 7 && b > 99 && b < 1000);
}
int32_t main() {
string base = "";
vector<int> nums;
int max_el = 0, max_sum = 0, q = 0;
ifstream in(base + "17.txt");
while(!in.eof()) {
int t;
in >> t;
nums.push_back(t);
if (t % 10 == 7)
max_el = max(max_el, t);
}
for(int i = 0; i < nums.size() - 1; i++)
if (valid(nums[i], nums[i+1]) && nums[i] + nums[i+1] < max_el) {
q++;
max_sum = max(max_sum, nums[i] + nums[i+1]);
}
cout << q << " " << max_sum << '\n';
}
Ответ: \(3 \,\, 1027\)
ЕГЭ. Поляков-7680
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(1000\). Определите количество пар последовательности, для которых минимальный элемент последовательности, оканчивающийся на \(3\), кратен наибольшему общему делителю пары. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
from math import gcd
base = ''
nums = [int(x) for x in open(base + '17.txt')]
min_el = min([x for x in nums if x % 10 == 3])
max_sum = 0
q = 0
for x, y in zip(nums, nums[1:]):
if min_el % gcd(x, y) == 0:
q += 1
max_sum = max(x + y, max_sum)
print(q, max_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
#include<string>
using namespace std;
int gcd(int x, int y) {
while (x != y) {
if (x > y) {
int t = x % y;
x = (t) ? t : y;
}
else {
int t = y % x;
y = (t) ? t : x;
}
}
return x;
}
int32_t main() {
vector<int> nums;
string base = "";
ifstream in(base + "17.txt");
int min_el = 1000000, max_sum = 0, q = 0;
while (!in.eof()) {
int t;
in >> t;
nums.push_back(t);
if (t % 10 == 3)
min_el = min(min_el, t);
}
for(int i = 0; i < nums.size() - 1; i++)
if (min_el % gcd(nums[i], nums[i+1]) == 0) {
q++;
max_sum = max(max_sum, nums[i] + nums[i+1]);
}
cout << q << " " << max_sum << endl;
}
Ответ: \(14 \,\, 1767\)
ЕГЭ. Поляков-7679
(К. Багдасарян)
В файле содержится последовательность натуральных чисел, не превышающих \(1000\). Определите количество пар последовательности, у которых наибольший общий делитель двух чисел пары оканчивается на ту же цифру, что и минимальный элемент последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
from math import gcd
base = ''
nums = [int(x) for x in open(base + '17.txt')]
min_el = min(nums)
max_sum = 0
q = 0
for x, y in zip(nums, nums[1:]):
if gcd(x, y) % 10 == min_el % 10:
q += 1
max_sum = max(x + y, max_sum)
print(q, max_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
#include<string>
using namespace std;
int gcd(int x, int y) {
while (x != y) {
if (x > y) {
int t = x % y;
x = (t) ? t : y;
}
else {
int t = y % x;
y = (t) ? t : x;
}
}
return x;
}
int32_t main() {
vector<int> nums;
string base = "";
ifstream in(base + "17.txt");
int min_el = 1000000, max_sum = 0, q = 0;
while (!in.eof()) {
int t;
in >> t;
nums.push_back(t);
min_el = min(min_el, t);
}
for(int i = 0; i < nums.size() - 1; i++)
if (gcd(nums[i], nums[i+1]) % 10 == min_el % 10) {
q++;
max_sum = max(max_sum, nums[i] + nums[i+1]);
}
cout << q << " " << max_sum << endl;
}
Ответ: \(11 \,\, 1360\)
ЕГЭ. Поляков-7564
(ЕГЭ-2024)
В файле содержится последовательность целых чисел, не превышающих по модулю \(100~000\). Определите количество троек элементов последовательности, в которых хотя бы два элемента из трёх оканчиваются на \(7\) и являются четырёхзначными числами, а сумма всех элементов тройки больше максимального элемента последовательности, оканчивающегося на \(7\) и являющегося четырехзначным числом. В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три подряд идущих элемента последовательности.
Решение:
Python
v = [int(x) for x in open('17-409.txt')]
mx7 = max([x for x in v if abs(x) % 10 == 7 and 999 < abs(x) < 10000])
mxsum = -10**10
q = 0
for x, y, z in zip(v, v[1:], v[2:]):
t = int(abs(x) % 10 == 7 and 999 < abs(x) < 10000)
t += int(abs(y) % 10 == 7 and 999 < abs(y) < 10000)
t += int(abs(z) % 10 == 7 and 999 < abs(z) < 10000)
s = sum([x, y, z])
if t > 1 and s > mx7:
q += 1
mxsum = max(mxsum, s)
print(q, mxsum)
C++
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int32_t main() {
vector<int> v;
ifstream in("17-409.txt");
int tmp, mx7 = -1000 * 1000, q = 0, mxsum = -1000 * 1000;
while (!in.eof())
{
in >> tmp;
v.push_back(tmp);
if (abs(tmp) % 10 == 7 && abs(tmp) > 999 && abs(tmp) < 10000)
mx7 = max(mx7, tmp);
}
for (int i = 0; i < v.size() - 2; i++) {
int x = int(abs(v[i]) % 10 == 7 && abs(v[i]) > 999 && abs(v[i]) < 10000);
x += int(abs(v[i+1]) % 10 == 7 && abs(v[i+1]) > 999 && abs(v[i+1]) < 10000);
x += int(abs(v[i+2]) % 10 == 7 && abs(v[i+2]) > 999 && abs(v[i+2]) < 10000);
int s = v[i] + v[i+1] + v[i+2];
if(x > 1 && s > mx7) {
q++;
mxsum = max(mxsum, s);
}
}
cout << q << " " << mxsum << '\n';
}
Ответ: \(6 \,\, 84385\)
ЕГЭ. Поляков-7563 ЕГЭ-2024
В файле содержится последовательность целых чисел, не превышающих по модулю \(100~000\). Определите количество троек элементов последовательности, в которых хотя бы один элемент оканчивается на \(3\) и является трёхзначным числом, а сумма всех элементов меньше максимального элемента последовательности, оканчивающегося на \(3\) и являющегося трёхзначным числом. В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
m3 = max([x for x in nums if abs(x) % 10 == 3 and 99 < abs(x) < 1000])
q = 0
max_sum = - 10**100
for t in zip(nums, nums[1:], nums[2:]):
if any([abs(x) % 10 == 3 and 99 < abs(x) < 1000 for x in t]) and sum(t) < m3:
q += 1
max_sum = max(max_sum, sum(t))
print(q, max_sum)
Ответ: \(147 \,\, 944\)
ЕГЭ. Поляков-7526 ЕГЭ-2024
В файле содержится последовательность целых чисел, не превышающих по модулю \(100~000\). Определите количество пар последовательности, в которых хотя бы одно число отрицательно, а сумма чисел пары меньше количества чисел последовательности, кратных \(32\). В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
q32 = sum([x % 32 == 0 for x in nums])
q = 0
max_sum = - 10**100
for p in zip(nums, nums[1:]):
if any([x < 0 for x in p]) and sum(p) < q32:
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(4969 \,\, 299\)
ЕГЭ. Поляков-7487 ЕГЭ-2024
В файле содержится последовательность натуральных чисел, не превышающих \(100~000\). Определите количество пар элементов последовательности, в которых произведение остатков от деления элементов пары на \(77\) равно квадрату минимального элементу последовательности. В ответе запишите количество найденных пар, затем минимальное из произведений элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
min_el2 = min(nums)**2
q = 0
min_prod = 10**100
for p in zip(nums, nums[1:]):
a, b = p
if (a % 77) * (b % 77) == min_el2:
q += 1
min_prod = min(a * b, min_prod)
print(q, min_prod)
Ответ: \(48 \,\, 5952\)
ЕГЭ. Поляков-7486 (ЕГЭ-2024)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000\). Определите количество пар элементов последовательности, в которых остатки от деления обоих элементов пары на \(65\) равны минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
min_el = min(nums)
q = 0
max_sum = 0
for p in zip(nums, nums[1:]):
if all(x % 65 == min_el for x in p):
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(19 \,\, 125644\)
ЕГЭ. Поляков-7485 (ЕГЭ-2024)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000\). Определите количество пар элементов последовательности, в которых остаток от деления хотя бы одного из двух элементов пары на \(55\) равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
v = [int(x) for x in open('17-404.txt')]
min_el = min(v)
q = 0
min_sum = 10**10
for x, y in zip(v, v[1:]):
if x % 55 == min_el or y % 55 == min_el:
q += 1
min_sum = min(min_sum, x+y)
print(q, min_sum)
C++
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int32_t main() {
vector<int> v;
ifstream in("17-404.txt");
int min_el = 1000000, min_sum = 1000000, q = 0;
while (!in.eof()) {
int tmp;
in >> tmp;
v.push_back(tmp);
min_el = min(min_el, tmp);
}
for(int i = 0; i < v.size() - 1; i++) {
if (v[i] % 55 == min_el || v[i+1] % 55 == min_el) {
q++;
min_sum = min(min_sum, v[i] + v[i+1]);
}
}
cout << q << " " << min_sum << '\n';
}
Ответ: \(201 \,\, 2942\)
ЕГЭ. Поляков-7484 (ЕГЭ-2024)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000\). Определите количество пар элементов последовательности, в которых сумма остатков от деления обоих элементов пары на \(18\) равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
min_el = min(nums)
q = 0
max_sum = 0
for p in zip(nums, nums[1:]):
a, b = p
if (a % 18) + (b % 18) == min_el:
q += 1
max_sum = max(max_sum, a + b)
print(q, max_sum)
Ответ: \(637 \,\, 183452\)
ЕГЭ. Поляков-7429 (Е. Джобс)
В файле содержится последовательность натуральных чисел, не превышающих \(100~000\). Определите количество пар элементов последовательности, в которых хотя бы одно число кратно минимальному двузначному элементу последовательности, кратному сумме своих цифр. Гарантируется, что в последовательности есть хотя бы одно двузначное число, соответствующее условию. В ответе запишите количество найденных пар чисел, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def check(x):
if 9 < x < 100:
s = x % 10 + x // 10
if x % s == 0:
return True
return False
nums = [int(x) for x in open('17.txt')]
min_el = min([x for x in nums if check(x)])
q = 0
max_sum = 0
for p in zip(nums, nums[1:]):
if any(x % min_el == 0 for x in p):
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(537 \,\, 19247\)
ЕГЭ. Поляков-7428 (А. Минак)
В файле содержится последовательность целых чисел. Все элементы последовательности различны и могут принимать целые значения от \(−100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно два числа нечётны, и ровно одно из чисел больше максимального элемента последовательности, оканчивающегося цифрой \(7\). В ответе запишите количество таких троек, затем три старших разряда среднего арифметического всех элементов последовательности, входящих в эти тройки. При вычислении среднего арифметического каждый элемент последовательности учитывается только один раз, даже если он входит в несколько подходящих троек. В данной задаче под тройкой подразумевается три подряд идущих элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
max7 = max(x for x in nums if abs(x) % 10 == 7)
s = set()
q = 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(x % 2 == 1 for x in tr) == 2 and sum(x > max7 for x in tr) == 1:
q += 1
for x in tr:
s.add(x)
m = str(sum(s) // len(s))
print(q, m[:3])
Ответ: \(6473 \,\, 555\)
ЕГЭ. Поляков-7427 (А. Минак)
В файле содержится последовательность целых чисел. Все элементы последовательности различны и могут принимать целые значения от \(−100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно два числа оканчиваются цифрой \(3\) и хотя бы одно из чисел меньше минимального чётного элемента последовательности. В ответе запишите количество таких троек чисел, затем целую часть от среднего арифметического всех элементов последовательности, входящих в эти тройки. При вычислении среднего арифметического каждый элемент последовательности учитывается только один раз, даже если он входит в несколько подходящих троек. В данной задаче под тройкой подразумевается три подряд идущих элемента последовательности.
Решение:
Python
n = [int(x) for x in open('17.txt')]
min_even = min(x for x in n if x % 2 == 0)
q = 0
s = set()
for tr in zip(n, n[1:], n[2:]):
if sum(abs(x) % 10 == 3 for x in tr) == 2 and any(x < min_even for x in tr):
q += 1
for x in tr:
s.add(x)
print(q, sum(s) // len(s))
Ответ: \(1771 \,\, 6020\)
ЕГЭ. Поляков-7390 (А. Минак)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(−100~000\) до \(100~000\) включительно. Определите количество пар элементов последовательности, в которых только одно из чисел оканчивается на \(4\), а сумма элементов пары не делится на минимальный трёхзначный элемент последовательности, начинающийся с цифры \(5\). В ответе запишите два числа: количество найденных пар чисел, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
n = [int(x) for x in open('17.txt')]
min_el5 = min(x for x in n if 99 < x < 1000 and x // 100 == 5)
q = 0
max_sum = -10**100
for p in zip(n, n[1:]):
if sum(abs(x) % 10 == 4 for x in p) == 1 and sum(p) % min_el5:
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(1795 \,\, 199007\)
ЕГЭ. Поляков-7234
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— в тройке есть четырёхзначные числа, но не все числа четырёхзначные;
— в тройке больше чисел, кратных \(13\), чем чисел, кратных \(7\);
— каждый элемент тройки больше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(151\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(151.\))
В ответе запишите количество найденных троек, затем – минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [999 < abs(x) < 10000 for x in tr]
d13 = [abs(x) % 13 == 0 for x in tr]
d7 = [abs(x) % 7 == 0 for x in tr]
cond3 = [x > m for x in tr]
return 0 < sum(cond1) < 3 and sum(d13) > sum(d7) and all(cond3)
n = [int(x) for x in open('17.txt')]
n151 = [x for x in n if abs(x) % 1000 == 151]
m = sum(n151) / len(n151)
min_sum = 10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(18 \,\, 37313\)
ЕГЭ. Поляков-7233
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— в тройке есть трёхзначные числа, но не все числа трёхзначные;
— в тройке больше чисел, кратных \(11\), чем чисел, кратных \(3\);
— каждый элемент тройки больше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(271\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(271\).) В ответе запишите количество найденных троек, затем — минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [99 < abs(x) < 1000 for x in tr]
d11 = [abs(x) % 11 == 0 for x in tr]
d3 = [abs(x) % 3 == 0 for x in tr]
cond3 = [x > m for x in tr]
return 0 < sum(cond1) < 3 and sum(d11) > sum(d3) and all(cond3)
n = [int(x) for x in open('17.txt')]
n271 = [x for x in n if abs(x) % 1000 == 271]
m = sum(n271) / len(n271)
min_sum = 10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(31 \,\, 11207\)
ЕГЭ. Поляков-7232
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— в тройке есть пятизначные числа, но не все числа пятизначные;
— в тройке больше чисел, кратных \(5\), чем чисел, кратных \(11\);
— каждый элемент тройки больше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(641\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(641\).)
В ответе запишите количество найденных троек, затем – минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [9999 < abs(x) < 100000 for x in tr]
d11 = [abs(x) % 11 == 0 for x in tr]
d5 = [abs(x) % 5 == 0 for x in tr]
cond3 = [x > m for x in tr]
return 0 < sum(cond1) < 3 and sum(d5) > sum(d11) and all(cond3)
n = [int(x) for x in open('17.txt')]
n641 = [x for x in n if abs(x) % 1000 == 641]
m = sum(n641) / len(n641)
min_sum = 10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(4735 \,\, 9211\)
ЕГЭ. Поляков-7231
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— в тройке есть четырёхзначные числа, но не все числа четырёхзначные;
— в тройке больше числе, кратных \(5\), чем чисел, кратных \(7\);
— каждый элемент тройки больше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(615\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(615\).)
В ответе запишите количество найденных троек, затем – минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [999 < abs(x) < 10000 for x in tr]
d5 = [abs(x) % 5 == 0 for x in tr]
d7 = [abs(x) % 7 == 0 for x in tr]
cond3 = [x > m for x in tr]
return 0 < sum(cond1) < 3 and sum(d5) > sum(d7) and all(cond3)
n = [int(x) for x in open('17.txt')]
n615 = [x for x in n if abs(x) % 1000 == 615]
m = sum(n615) / len(n615)
min_sum = 10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(284 \,\, 19280\)
ЕГЭ. Поляков-7230
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— хотя бы одно число в тройке четырёхзначное;
— ровно два числа в тройке заканчиваются на \(11\);
— каждый элемент тройки больше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(28\).>(Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(28\).) В ответе запишите количество найденных троек, затем — минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [999 < abs(x) < 10000 for x in tr]
f11 = [abs(x) % 100 == 11 for x in tr]
cond3 = [x > m for x in tr]
return any(cond1) and sum(f11) == 2 and all(cond3)
n = [int(x) for x in open('17.txt')]
n28 = [x for x in n if abs(x) % 100 == 28]
m = sum(n28) / len(n28)
min_sum = 10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(4 \,\, 8450\)
ЕГЭ. Поляков-7229
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— хотя бы одно число в тройке пятизначное;
— ровно два числа в тройке заканчиваются на \(7\);
— каждый элемент тройки больше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(13\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(13\).)
В ответе запишите количество найденных троек, затем — минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [9999 < abs(x) < 100000 for x in tr]
f7 = [abs(x) % 10 == 7 for x in tr]
cond3 = [x > m for x in tr]
return any(cond1) and sum(f7) == 2 and all(cond3)
n = [int(x) for x in open('17.txt')]
n13 = [x for x in n if abs(x) % 100 == 13]
m = sum(n13) / len(n13)
min_sum = 10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(161 \,\, 16270\)
ЕГЭ. Поляков-7228
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— хотя бы два числа в тройке трёхзначные;
— ровно одно число в тройке заканчивается на \(3\);
— каждый элемент тройки меньше среднего арифметического всех элементов последовательности, запись которых заканчивается на \(38\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(38\).)
В ответе запишите количество найденных троек, затем — максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [99 < abs(x) < 1000 for x in tr]
f3 = [abs(x) % 10 == 3 for x in tr]
cond3 = [x < m for x in tr]
return sum(cond1) > 1 and sum(f3) == 1 and all(cond3)
n = [int(x) for x in open('17.txt')]
n38 = [x for x in n if abs(x) % 100 == 38]
m = sum(n38) / len(n38)
max_sum = -10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(1771 \,\, 2763\)
ЕГЭ. Поляков-7227
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— ровно два числа в тройке трёхзначные;
— хотя бы одно число в тройке делится на \(11\);
— сумма элементов тройки больше максимального элемента последовательности, запись которого заканчивается на \(73\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(73\).)
В ответе запишите количество найденных троек, затем — максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [99 < abs(x) < 1000 for x in tr]
d11 = [abs(x) % 11 == 0 for x in tr]
return sum(cond1) == 2 and sum(d11) > 0 and sum(tr) > m
n = [int(x) for x in open('17.txt')]
m = max(x for x in n if abs(x) % 100 == 73)
max_sum = -10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(9 \,\, 100207\)
ЕГЭ. Поляков-7226
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек, для которых выполняются следующие условия:
— ровно два числа в тройке четырёхзначные;
— хотя бы одно число в тройке делится на \(7\);
— сумма элементов тройки больше максимального элемента последовательности, запись которого заканчивается на \(15\). (Гарантируется, что в последовательности есть хотя бы один элемент, запись которого заканчивается на \(15\).)
В ответе запишите количество найденных троек, затем — максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def check(tr, m):
cond1 = [999 < abs(x) < 10000 for x in tr]
d7 = [abs(x) % 7 == 0 for x in tr]
return sum(cond1) == 2 and any(d7) and sum(tr) > m
n = [int(x) for x in open('17.txt')]
m = max(x for x in n if abs(x) % 100 == 15)
max_sum = -10**100
q = 0
for tr in zip(n, n[1:], n[2:]):
if check(tr, m):
q += 1
max_sum = max(max_sum, sum(tr))
print(q, max_sum)
Ответ: \(22 \,\, 112649\)
ЕГЭ. Поляков-7080 (PRO100-ЕГЭ)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество четвёрок элементов последовательности, в которых или только одно из чисел или все четыре числа являются двузначным, а сумма элементов четвёрки не меньше максимального элемента последовательности, оканчивающегося на \(68.\) В ответе запишите количество найденных четвёрок чисел, затем максимальную из сумм элементов таких четвёрок. В данной задаче под четвёркой подразумевается четыре идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m68 = max(x for x in nums if abs(x) % 100 == 68)
q = 0
msum = -float('inf')
for n in zip(nums, nums[1:], nums[2:], nums[3:]):
if sum(9 < abs(x) < 100 for x in n) in (1, 4) and sum(n) >= m68:
q += 1
msum = max(msum, sum(n))
print(q, msum)
Ответ: \(75 \,\, 247177\)
ЕГЭ. Поляков-7079 (PRO100-ЕГЭ)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, среди которых есть не более одного числа, начинающегося с цифры \(6,\) а сумма элементов тройки не меньше максимального элемента последовательности, начинающегося с цифры \(8.\) В ответе запишите количество найденных троек чисел, затем минимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m8 = max(x for x in nums if str(abs(x))[0] == '8')
q = 0
msum = float('inf')
for n in zip(nums, nums[1:], nums[2:]):
if sum(str(abs(x))[0] == '6' for x in n) < 2 and sum(n) >= m8:
q += 1
msum = min(msum, sum(n))
print(q, msum)
Ответ: \(186 \,\, 89990\)
ЕГЭ. Поляков-7078 (PRO100-ЕГЭ)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество пар последовательности, в которых только одно число оканчивается на \(13.\) В ответе запишите количество найденных пар чисел, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два элемента последовательности у которых разница в индексах равна трём.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
q = 0
msum = -float('inf')
for p in zip(nums, nums[3:]):
if sum(abs(x) % 100 == 13 for x in p) == 1:
q += 1
msum = max(msum, sum(p))
print(q, msum)
Ответ: \(90 \,\, 16794\)
ЕГЭ. Поляков-6893 (Н. Сафронов)
В файле содержится последовательность целых неотрицательных чисел, не превышающих \(10~000.\) Определите количество троек элементов последовательности, в которых каждое число содержит цифру \(3\) в десятичной записи, а сумма элементов такой тройки является простым числом. В ответе запишите два числа: сначала количество найденных троек, затем минимальную сумму элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности..
Решение:
Python
def is_prime(n):
if n == 0 or n == 1:
return False
if n == 2:
return True
for x in range(2, int(n**0.5) + 1):
if n % x == 0:
return False
return True
base = ''
nums = [int(x) for x in open(base + '17.txt')]
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
if all('3' in str(x) for x in tr) and is_prime(sum(tr)):
q += 1
min_sum = min(min_sum, sum(tr))
print(q, min_sum)
Ответ: \(13 \,\, 4327\)
ЕГЭ. Поляков-6892 (Н. Сафронов)
В файле содержится последовательность целых неотрицательных чисел, не превышающих \(10~000.\) Определите количество пар элементов последовательности, в которых каждое число больше максимального из тех элементов последовательности, сумма цифр которых минимальна. В ответе запишите два числа: сначала количество найденных пар, затем максимальную сумму цифр элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [x.strip() for x in open(base + '17.txt')]
min_dsum = float('inf')
n = []
for x in nums:
dsum = sum(int(z) for z in x)
if dsum == min_dsum:
n.append(int(x))
elif dsum < min_dsum:
min_dsum = dsum
n = [int(x)]
mx = max(n)
q = 0
max_sum = 0
for p in zip(nums, nums[1:]):
if all(int(x) > mx for x in p):
q += 1
max_sum = max(max_sum, sum(int(z) for z in ''.join(p)))
print(q, max_sum)
Ответ: \(831 \,\, 61\)
ЕГЭ. Поляков-6831 (А. Богданов)
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество элементов последовательности, которые больше любой суммы пары элементов, в которой ровно одно число двухзначное. В ответе запишите количество найденных элементов, затем минимальный из них. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
max_sum = 0
for p in zip(nums, nums[1:]):
if sum(9 < x < 100 for x in p) == 1:
max_sum = max(max_sum, sum(p))
q = 0
min_n = float('inf')
for x in nums:
if x > max_sum:
q += 1
min_n = min(min_n, x)
print(q, min_n)
Ответ: \(661 \,\, 8781\)
ЕГЭ. Поляков-6761 (А. Рогов)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество пар последовательности, в которых хотя бы одно число является двузначным, а сумма элементов пары не превышает максимальный двузначный элемент последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
base = ''
nums = [int(x) for x in open(base + '17.txt')]
m2 = max(x for x in nums if 9 < x < 100)
q = 0
max_sum = 0
for p in zip(nums, nums[1:]):
if any(9 < abs(x) < 100 for x in p) and sum(p) <= m2:
q += 1
max_sum = max(max_sum, sum(p))
print(q, max_sum)
Ответ: \(42 \, 25\)
ЕГЭ. Поляков-4274 (В. Шубинкин)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество локальных минимумов в этой последовательности, затем максимальный среди этих элементов. Под локальным минимумом подразумевается элемент последовательности, меньший двух соседних элементов. Гарантируется наличие хотя бы двух локальных минимумов. Например, в последовательности \(10; \, 4; \, 7; \, -2; \, -10; \, 12; \, 3\) два локальных минимума \((4\) и \(-10)\), поэтому правильным ответом для данного примера будет пара чисел \(2\) и \(4\).
Решение:
C++
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int32_t main() {
ifstream in("17-1.txt");
vector<int> v;
int loc_min = 0, max_min = -100000;
while(!in.eof()) {
int t;
in >> t;
v.push_back(t);
}
for (int i = 1; i < v.size() - 1; i++) {
if (v[i] < v[i-1] && v[i] < v[i+1]) {
loc_min++;
max_min = max(max_min, v[i]);
}
}
cout << loc_min << " " << max_min << '\n';
}
Ответ: \(3316 \,\, 8125\)
ЕГЭ. Поляков-4273 (В. Шубинкин)
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество локальных максимумов в этой последовательности, затем наименьшее расстояние между двумя локальными максимумами. Под локальным максимумом подразумевается элемент последовательности, больший двух соседних элементов. Под расстоянием между элементами последовательности в данной задаче подразумевается разность номеров позиций этих элементов. Гарантируется наличие хотя бы двух локальных максимумов. Например, в последовательности \(10; \, 4; \, 7; \, -2; \, -10; \, 12; \, 3; \, 5; \, -2\) три локальных максимума \((7, \, 12\) и \(5)\), поэтому правильным ответом для данного примера будет пара чисел \(3\) и \(2\).
Решение:
C++
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
int32_t main() {
ifstream in("17-1.txt");
vector<int> v;
int min_dist = 100000, prev_pos = -100000, loc_max = 0;
while(!in.eof()) {
int tmp;
in >> tmp;
v.push_back(tmp);
}
for(int i = 1; i < v.size() - 1; i++)
if (v[i] > v[i-1] && v[i] > v[i+1]) {
loc_max++;
min_dist = min(i - prev_pos, min_dist);
prev_pos = i;
}
cout << loc_max << " " << min_dist << '\n';
}
Ответ: \(3316 \,\, 2\)
ЕГЭ. Поляков-4272
В файле 17-1.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество элементов последовательности, которые больше предыдущего элемента, затем наименьший модуль разности чисел в паре среди всех таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности. Например, для последовательности \(307; \, 36; \, 45; \, -27; \, -11; \, -6; \, 2; \, -16\) ответом будет пара чисел: \(4\) и \(5\). (В. Шубинкин)
Решение:
Python
f = open('17-1.txt')
nums = list(map(int, f.readlines()))
nums_count, min_sub = 0, float('Inf')
for i in range(1, len(nums)):
if nums[i-1] < nums[i]:
nums_count += 1
min_sub = min(min_sub, abs(nums[i-1] - nums[i]))
print(nums_count, min_sub)
Ответ: 5012 8
ЕГЭ. Поляков-4271
В файле 17-1.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых ровно одно число делится на \(9\), а другое при этом заканчивается на \(3\) в восьмеричной системе счисления. Затем - максимальное число в паре среди всех таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности. Например, для последовательности \(307; \, 36; \, 45; \, -27; \, -11; \, -6; \, 2; \, 16\) ответом будет пара чисел: \(2\) и \(307\). (В. Шубинкин)
Решение:
Python
f = open('17-1.txt')
nums = list(map(int, f.readlines()))
pair_count, max_n = 0, -float('Inf')
for i in range(1, len(nums)):
if (nums[i-1] % 9 == 0 and nums[i] % 9 and abs(nums[i]) % 8 == 3) or \
(nums[i] % 9 == 0 and nums[i-1] % 9 and abs(nums[i-1]) % 8 == 3):
pair_count += 1
max_n = max(max_n, nums[i-1], nums[i])
print(pair_count, max_n)
Ответ: 252 9971
ЕГЭ. Поляков-4270
В файле 17-1.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число оканчивается на \(6\) и делится на \(3\). Затем минимальное число в паре среди всех таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности. Например, для последовательности \(306; \, 36; \, -15; \, -6; \, 2; \, 16\) ответом будет пара чисел: \(4\) и \(-15\). (В. Шубинкин)
Решение:
Python
f = open('17-1.txt')
nums = list(map(int, f.readlines()))
pair_count, min_n = 0, float('Inf')
for i in range(1, len(nums)):
if (abs(nums[i-1]) % 10 == 6 and nums[i-1] % 3 == 0) or \
(abs(nums[i]) % 10 == 6 and nums[i] % 3 == 0):
pair_count += 1
min_n = min(min_n, nums[i-1], nums[i])
print(pair_count, min_n)
Ответ: \(587\) \(-9996\)
ЕГЭ. Поляков-4269
В файле 17-1.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число делится на \(7\), а другое при этом не делится на \(17\). Затем — минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности. Например, для последовательности \(-45; \, 14; \, 22; \, -21; \, 34\) ответом будет пара чисел: \(3\) и \(-31\). (В. Шубинкин)
Решение:
Python
f = open('17-1.txt')
nums = list(map(int, f.readlines()))
pair_count, min_sum = 0, float('Inf')
for i in range(1, len(nums)):
if (nums[i-1] % 7 == 0 and nums[i] % 17) or \
(nums[i] % 7 == 0 and nums[i-1] % 17):
pair_count += 1
min_sum = min(min_sum, nums[i-1] + nums[i])
print(pair_count, min_sum)
Ответ: \(2510\) \(-19677\)
ЕГЭ 2024. Пересдача. 04.07.2024
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определить количество пар последовательности, в которых элементы не равны, а абсолютное значение их разности делится на минимальный положительный элемент последовательности, кратный \(41\). Гарантируется, что такой элемент в последовательности есть. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
n = [int(x) for x in open('17.txt')]
min41 = min(x for x in n if x > 0 and x % 41 == 0)
q = 0
max_sum = 0
for a, b in zip(n, n[1:]):
if a != b and abs(a - b) % min41 == 0:
q += 1
max_sum = max(max_sum, a+b)
print(q, max_sum)
Ответ: \(10 \,\, 92404\)
ЕГЭ 2024. Резерв. 18.06.2024
В файле содержится последовательность целых чисел. Её элементы по модулю не превышают \(100~000\) включительно. Определите количество троек элементов последовательности, в которых хотя бы два элемента из трёх оканчиваются на \(7\) и являются четырёхзначными числами, а сумма всех элементов тройки больше максимального элемента последовательности, оканчивающегося на \(7\) и являющегося четырёхзначным числом. В ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три подряд идущих элемента последовательности.
Решение:
Python
def cond(tr):
return sum([abs(x) % 10 == 7 and 999 < abs(x) < 10_000 for x in tr])
n = [int(x) for x in open('17.txt')]
n7_max = max([x for x in n if abs(x) % 10 == 7 and 999 < abs(x) < 10_000])
q = 0
max_sum = -10**20
for tr in zip(n, n[1:], n[2:]):
if cond(tr) >= 2 and sum(tr) > n7_max:
q += 1
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(6 \,\, 84385\)
ЕГЭ 2024. Основная волна. 07.06.2024
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от \(1\) до \(100~000\) включительно. Определите количество пар последовательности, в которых остаток от деления на \(55\) хотя бы одного из элементов равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
arr = [int(x) for x in open('17.txt')]
min_el = min(arr)
min_sum = 10**100
q = 0
for a, b in zip(arr, arr[1:]):
if min_el in (a % 55, b % 55):
q += 1
min_sum = min(min_sum, a+b)
print(q, min_sum)
Ответ: \(201 \quad 2942\)
ЕГЭ 2024. Лещинер-1
Рассматриваются множества целых чисел, принадлежащих числовому отрезку \([2048; \,\, 14336]\), которые делятся на \(3\) и не делятся на \(7\), \(17\), \(19\), \(27\).
Найдите количество таких чисел и максимальное из них.
В ответе запишите два целых числа: сначала количество, затем максимальное число.
Решение:
Python
q = 0
max_n = 0
for n in range(2049, 14337, 3):
if n % 7 and n % 17 and n % 19 and n % 27:
q += 1
max_n = n
print(q, max_n)
Ответ: \(2782\) \(14334\)
Демо 2024
В файле содержится последовательность натуральных чисел, каждое из которых не превышает \(100~000\). Определите количество троек элементов последовательности, в которых ровно два из трёх элементов являются трёхзначными числами, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на \(13\). Гарантируется, что в последовательности есть хотя бы одно число, оканчивающееся на \(13\). В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def is_3_digs(t):
tmp = 0
for i in range(3):
tmp += 99 < t[i % 3] < 1000 and 99 < t[(i+1) % 3] < 1000 and not 99 < t[(i+2) % 3] < 1000
return tmp
nums = [int(x) for x in open('17_2024.txt')]
max13 = max([x for x in nums if x % 100 == 13])
trio_sums = []
for x in zip(nums, nums[1:], nums[2:]):
if is_3_digs(x) and sum(x) < max13:
trio_sums.append(sum(x))
print(len(trio_sums), max(trio_sums))
Ответ: \(959\) \(97471\)
Апробация 10.03.2023
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество пар последовательности,в которых хотя бы одно число отрицательно, а сумма чисел пары меньше количества чисел в последовательности, делящихся на \(3\). В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
div3 = 0
pair_count = 0
max_sum = -100_000
for x in nums:
if x % 3 == 0:
div3 += 1
for pair in zip(nums, nums[1:]):
if (pair[0] < 0 or pair[1] < 0) and sum(pair) < div3:
pair_count += 1
max_sum = max(max_sum, sum(pair))
print(pair_count, max_sum)
Ответ: \(5128\) \(3322\)
Статград 2023-2-2
Файл содержит последовательность целых чисел, по модулю не превышающих \(10~000\). Назовём парой два идущих подряд элемента последовательности. Определите количество таких пар, в которых запись меньшего элемента заканчивается цифрой \(3\), а сумма квадратов элементов пары меньше, чем квадрат наименьшего из элементов последовательности, запись которых заканчивается цифрой \(3\). В ответе запишите два числа: сначала количество найденных пар, затем максимальную сумму квадратов элементов таких пар.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
min_sq_3 = min(filter(lambda x: abs(x) % 10 == 3, nums)) ** 2
fin_arr = [(x[0], x[1]) for x in zip(nums, nums[1:]) if abs(min(x)) % 10 == 3 and x[0]**2 + x[1]**2 < min_sq_3]
max_sq_sum = max([x[0]**2 + x[1]**2 for x in fin_arr])
print(len(fin_arr), max_sq_sum)
Ответ: \(355\) \(99033293\)
Статград 2023-2-1
Файл содержит последовательность целых чисел, по модулю не превышающих \(10~000\). Назовём парой два идущих подряд элемента последовательности. Определите количество таких пар, в которых запись меньшего элемента заканчивается цифрой \(5\), а сумма квадратов элементов пары меньше, чем квадрат наименьшего из элементов последовательности, запись которых заканчивается цифрой \(5\). В ответе запишите два числа: сначала количество найденных пар, затем максимальную сумму квадратов элементов таких пар.
Решение:
Python
nums = [int(x) for x in open('17.txt')]
min_sq_5 = min(filter(lambda x: x % 10 == 5, nums)) ** 2
fin_arr = [(x[0], x[1]) for x in zip(nums, nums[1:]) if min(x) % 10 == 5 and x[0]**2 + x[1]**2 < min_sq_5]
max_sq_sum = max([x[0]**2 + x[1]**2 for x in fin_arr])
print(len(fin_arr), max_sq_sum)
Ответ: \(403\) \(99805561\)
Фоксфорд. 2023-4
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество пар последовательности, в которых только одно число оканчивается на \(2\), а квадрат суммы элементов пары не меньше квадрата минимального элемента последовательности, оканчивающегося на \(2\). В ответе запишите два числа: сначала количество найденных пар, затем максимальный из квадратов сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('174.txt')]
min_sq = min(filter(lambda x: abs(x) % 10 == 2, nums)) ** 2
nums_end2 = filter(lambda x: (abs(x[0]) % 10 == 2) != (abs(x[1]) % 10 == 2), zip(nums, nums[1:]))
nums_fin = [sum(x)**2 for x in nums_end2 if sum(x)**2 >= min_sq]
print(len(nums_fin), max(nums_fin))
Ответ: \(240\) \(383337241\)
Фоксфорд 2023-3
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество пар последовательности, в которых только одно число оканчивается на \(7\), а квадрат суммы элементов пары не меньше квадрата минимального элемента последовательности, оканчивающегося на \(7\). В ответе запишите два числа: сначала количество найденных пар, затем максимальный из квадратов сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('173.txt')]
min_sq = min(filter(lambda x: abs(x) % 10 == 7, nums)) ** 2
nums_end7 = filter(lambda x: (abs(x[0]) % 10 == 7) != (abs(x[1]) % 10 == 7), zip(nums, nums[1:]))
nums_fin = [sum(x)**2 for x in nums_end7 if sum(x)**2 >= min_sq]
print(len(nums_fin), max(nums_fin))
Ответ: \(219\) \(377447184\)
Статград 2023-1-2
Файл содержит последовательность целых чисел, по модулю не превышающих \(10~000\). Назовём парой два идущих подряд элемента последовательности. Определите количество таких пар, в которых запись ровно одного элемента заканчивается цифрой \(6\), а сумма квадратов элементов пары меньше, чем квадрат наименьшего из элементов последовательности, запись которых заканчивается цифрой \(6\). В ответе запишите два числа: сначала количество найденных пар, затем максимальную сумму квадратов элементов этих пар.
Решение:
Python
def only_6(t):
last_dig = [abs(x) % 10 for x in t]
return last_dig.count(6) == 1
file_desc = open('17.txt')
num_array = [int(x) for x in file_desc.readlines()]
min_el = min(filter(lambda x: abs(x) % 10 == 6, num_array))**2
temp = filter(only_6, zip(num_array, num_array[1:]))
sq_arr = [x[0]**2 + x[1]**2 for x in temp]
a = tuple(filter(lambda x: x < min_el, sq_arr))
print(len(a), max(a))
Ответ: \(720 \,\, 99266105\)
Статград 2023-1-1
Файл содержит последовательность целых чисел, по модулю не превышающих \(10~000\). Назовём парой два идущих подряд элемента последовательности. Определите количество таких пар, в которых запись ровно одного элемента заканчивается цифрой \(7\), а сумма квадратов элементов пары меньше, чем квадрат наименьшего из элементов последовательности, запись которых заканчивается цифрой \(7\). В ответе запишите два числа: сначала количество найденных пар, затем максимальную сумму квадратов элементов этих пар.
Решение:
Python
def only_7(t):
last_dig = [abs(x) % 10 for x in t]
return last_dig.count(7) == 1
file_desc = open('17.txt')
num_array = [int(x) for x in file_desc.readlines()]
min_el = min(filter(lambda x: abs(x) % 10 == 7, num_array))**2
temp = filter(only_7, zip(num_array, num_array[1:]))
sq_arr = [x[0]**2 + x[1]**2 for x in temp]
a = tuple(filter(lambda x: x < min_el, sq_arr))
print(len(a), max(a))
Ответ: \(671 \,\, 96731834\)
2023-20
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма модулей элементов пары имеет значение, не превосходящее \(200\) и при этом не менее \(50\), затем минимальное из чисел, которые являются элементами таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def sum_lt_200(t: tuple[int]) -> bool:
return 49 < sum(map(abs, t)) < 201
file_desc = open('17var20.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(sum_lt_200, zip(num_array, num_array[1:])))
print(len(final_tuple), min(map(min, final_tuple)))
Ответ: \(1 \,\, -92\)
2023-19
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма модулей элементов пары имеет значение, не превосходящее \(700\) и при этом не менее \(100\), затем максимальное из чисел, которые являются элементами таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def sum_lt_700(t: tuple[int]) -> bool:
return 99 < sum(map(abs, t)) < 701
file_desc = open('17var19.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(sum_lt_700, zip(num_array, num_array[1:])))
print(len(final_tuple), max(map(max, final_tuple)))
Ответ: \(11 \,\, 387\)
2023-18
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба элемента пары имеют значения меньше \(310\), затем минимальную из сумм кубов элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def el_lt_310(t: tuple[int]) -> bool:
return all(x < 310 for x in t)
file_desc = open('17var18.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(el_lt_310, zip(num_array, num_array[1:])))
min_sum = min(map(lambda f: f[0]**3 + f[1]**3, final_tuple))
print(len(final_tuple), min_sum)
Ответ: \(1457 \,\, -1891619136576\)
2023-17
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба элемента пары имеют значения меньше \(450\), затем максимальную из сумм кубов элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def el_lt_450(t: tuple[int]) -> bool:
return all(x < 450 for x in t)
file_desc = open('17var17.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(el_lt_450, zip(num_array, num_array[1:])))
max_sum = max(map(lambda f: f[0]**3 + f[1]**3, final_tuple))
print(len(final_tuple), max_sum)
Ответ: \(1533 \,\, 81262125\)
2023-16
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы один элемент пары превосходит \(300\), затем минимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def el_gt_300(t: tuple[int]) -> bool:
return any(x > 300 for x in t)
file_desc = open('17var16.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(el_gt_300, zip(num_array, num_array[1:])))
min_sum = min(map(lambda f: f[0]**2 + f[1]**2, final_tuple))
print(len(final_tuple), min_sum)
Ответ: \(4024 \,\, 176285\)
2023-15
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы один элемент пары превосходит \(700\), затем максимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def el_gt_700(t: tuple[int]) -> bool:
return any(x > 700 for x in t)
file_desc = open('17var15.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(el_gt_700, zip(num_array, num_array[1:])))
max_sum = max(map(lambda f: f[0]**2 + f[1]**2, final_tuple))
print(len(final_tuple), max_sum)
Ответ: \(3902 \,\, 197073925\)
2023-14
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма элементов не менее \(50\) и оба числа в паре неотрицательные, затем минимальное из произведений элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def sum_ge_50(t: tuple[int]) -> bool:
return sum(t) >= 50 and all(x >= 0 for x in t)
file_desc = open('17var14.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(sum_ge_50, zip(num_array, num_array[1:])))
min_prod = min(map(lambda f: f[0]*f[1], final_tuple))
print(len(final_tuple), min_prod)
Ответ: \(1042 \,\, 6736\)
2023-13
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма элементов не менее \(100\) и хотя бы одно число в паре отрицательное, затем максимальное из произведений элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def sum_ge_100(t: tuple[int]) -> bool:
return sum(t) >= 100 and any(x < 0 for x in t)
file_desc = open('17var13.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(sum_ge_100, zip(num_array, num_array[1:])))
max_prod = max(map(lambda f: f[0]*f[1], final_tuple))
print(len(final_tuple), max_prod)
Ответ: \(1137 \,\, -2655\)
2023-12
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на нечётные цифры, различные для элементов в паре, затем минимальное из произведений модулей элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def ended_by_diff_odd_number(t: tuple[int]) -> bool:
n1, n2 = tuple(map(lambda x: abs(x) % 10, t))
return n1 != n2 and n1 * n2 % 2
file_desc = open('17var12.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(ended_by_diff_odd_number, zip(num_array, num_array[1:])))
min_prod = min(map(lambda f: abs(f[0]*f[1]), final_tuple))
print(len(final_tuple), min_prod)
Ответ: \( 864 \,\, 4683 \)
2023-11
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на одну и ту же нечётную цифру, затем максимальное из произведений модулей элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def ended_by_same_odd_number(t: tuple[int]) -> bool:
n1, n2 = tuple(map(lambda x: abs(x) % 10, t))
return n1 == n2 and n1 % 2
file_desc = open('17var11.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(ended_by_same_odd_number, zip(num_array, num_array[1:])))
max_prod = max(map(lambda f: abs(f[0]*f[1]), final_tuple))
print(len(final_tuple), max_prod)
Ответ: \(227 \,\, 96784219\)
2023-10
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на цифру \(7\), затем минимальную из модулей разности элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def ended_by_7(t: tuple[int]) -> bool:
return all(abs(x) % 10 == 7 for x in t)
file_desc = open('17var10.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(ended_by_7, zip(num_array, num_array[1:])))
min_sub = min(map(lambda f: abs(f[0]-f[1]), final_tuple))
print(len(final_tuple), min_sub)
Ответ: \( 47 \,\, 80\)
2023-9
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на цифру \(5\), затем максимальную из модулей разности элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def ended_by_5(t: tuple[int]) -> bool:
return all(abs(x) % 10 == 5 for x in t)
file_desc = open('17var09.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(ended_by_5, zip(num_array, num_array[1:])))
max_sub = max(map(lambda f: abs(f[0]-f[1]), final_tuple))
print(len(final_tuple), max_sub)
Ответ: \(33 \,\, 16600\)
2023-8
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа делятся на \(5\), затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def divided_by_5(t: tuple[int]) -> bool:
return all(not x % 5 for x in t)
file_desc = open('17var08.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(divided_by_5, zip(num_array, num_array[1:])))
min_sum = min(map(sum, final_tuple))
print(len(final_tuple), min_sum)
Ответ: \(225 \,\, -17790\)
2023-7
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа делятся на \(3\), затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def divided_by_3(t: tuple[int]) -> bool:
return all(not x % 3 for x in t)
file_desc = open('17var07.txt')
num_array = [int(x) for x in file_desc.readlines()]
final_tuple = tuple(filter(divided_by_3, zip(num_array, num_array[1:])))
max_sum = max(map(sum, final_tuple))
print(len(final_tuple), max_sum)
Ответ: \(562 \,\, 18033\)
2023-6
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число является полным квадратом некоторого натурального числа, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def is_full_square(t):
p = filter(lambda x: x > 0, t)
return any(int(x**0.5)**2 == x for x in p)
file_desc = open('17var06.txt')
num_array = [int(x) for x in file_desc.readlines()]
fin_array = list(filter(is_full_square, zip(num_array, num_array[1:])))
min_sum = min([sum(f) for f in fin_array])
print(len(fin_array), min_sum)
Ответ: \(41 \,\, -9786\)
2023-5
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы одно число является полным квадратом некоторого натурального числа, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def is_full_square(t):
p = filter(lambda x: x > 0, t)
return any(int(x**0.5)**2 == x for x in p)
file_desc = open('17var05.txt')
num_array = [int(x) for x in file_desc.readlines()]
fin_array = list(filter(is_full_square, zip(num_array, num_array[1:])))
max_sum = max([sum(f) for f in fin_array])
print(len(fin_array), max_sum)
Ответ: \(60\,\, 18555\)
ЕГЭ-2022. 1 вариант
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 117 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
file_name = open('17.txt')
nums = tuple(map(int, file_name.readlines()))
min_num = min(nums)
max_sum = 0
pair_count = 0
for idx in range(len(nums) - 1):
if nums[idx] % 117 == min_num or nums[idx+1] % 117 == min_num:
pair_count += 1
max_sum = max(max_sum, nums[idx] + nums[idx+1])
print(pair_count, max_sum)
Ответ: \(175\) \(173738\)
Досрочный экзамен 2022
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(1\) до \( 10~000\) включительно. Определите количество пар последовательности, в которых хотя бы одно число кратно минимальному числу в последовательности, кратному 17. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под «парой» подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17.txt')
nums = list(map(int, f.readlines()))
n17_min = min([x for x in nums if not x % 17])
k = 0
max_sum = 0
for i in range(1, len(nums)):
if nums[i-1] % n17_min == 0 or nums[i] % n17_min == 0:
k += 1
max_sum = max(max_sum, nums[i-1] + nums[i])
print(k, max_sum)
Ответ: 24 17613
Статград-22-4-2
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых ровно один из двух элементов делится на \( 5 \), а модуль их разности меньше наименьшего чётного элемента последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальный модуль разности элементов таких пар.
Решение:
Python
f = open('17.txt')
nums = list(map(int, f.readlines()))
min_even = min([x for x in nums if not x % 2])
pair_count = 0
max_sub = 0
for i in range(1, len(nums)):
if ((nums[i-1] % 5 and not nums[i] % 5) \
or (not nums[i-1] % 5 and nums[i] % 5)) \
and abs(nums[i-1] - nums[i]) < min_even:
pair_count += 1
max_sub = max(max_sub, abs(nums[i-1] - nums[i]))
print(pair_count, max_sub)
Ответ: 577 823
Статград-22-4-1
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых ровно один из двух элементов делится на \( 3 \), а модуль их разности меньше наименьшего нечётного элемента последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальный модуль разности элементов таких пар.
Решение:
Python
f = open('17.txt')
nums = list(map(int, f.readlines()))
min_odd = min([x for x in nums if x % 2])
pair_count = 0
max_sub = 0
for i in range(1, len(nums)):
if ((nums[i-1] % 3 and not nums[i] % 3) \
or (not nums[i-1] % 3 and nums[i] % 3)) \
and abs(nums[i-1] - nums[i]) < min_odd:
pair_count += 1
max_sub = max(max_sub, abs(nums[i-1] - nums[i]))
print(pair_count, max_sub)
Ответ: 748 826
2022-20
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество троек элементов последовательности, в которых хотя бы одно число отрицательное, затем минимальную из сумм элементов таких троек. В данной задаче под «тройкой» подразумевается три подряд идущих элемента последовательности.
Решение:
Python
f = open('17var20.txt')
nums = list(map(int, f.readlines()))
t_count = 0
min_sum = 30000
for i in range(2, len(nums)):
if nums[i-2] < 0 or nums[i-1] < 0 or nums[i] < 0:
t_count += 1
min_sum = min(min_sum, sum(nums[i-2:i+1]))
print(t_count, min_sum)
Ответ: \(5271\) \(-28136\)
2022-19
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество троек элементов последовательности, в которых хотя бы одно число положительное, затем максимальную из сумм элементов таких троек. В данной задаче под «тройкой» подразумевается три подряд идущих элемента последовательности.
Решение:
Python
f = open('17var19.txt')
nums = list(map(int, f.readlines()))
t_count = 0
max_sum = -30000
for i in range(2, len(nums)):
if nums[i-2] > 0 or nums[i-1] > 0 or nums[i] > 0:
t_count += 1
max_sum = max(max_sum, sum(nums[i-2:i+1]))
print(t_count, max_sum)
Ответ: \(5284\) \(27495\)
2022-18
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма квадратов элементов пары имеет нечётное значение, меньшее \(80\), затем среди таких пар определите пару с максимальной суммой элементов и запишите минимальное из чисел в ней (если пар с максимальной суммой элементов несколько, то в ответ следует выбрать минимальное число из последней пары). В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var18.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
max_sum = -20000
for i in range(1, len(nums)):
s = nums[i-1] ** 2 + nums[i] ** 2
if s % 2 and s < 80 :
pair_count += 1
sm = nums[i-1] + nums[i]
if sm > max_sum:
max_sum = sm
min_num = min(nums[i-1], nums[i])
print(pair_count, min_num)
Ответ: \(2\) \(5\)
2022-17
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма квадратов элементов пары имеет нечётное значение, превосходящее \(90\), затем среди таких пар определите пару с минимальной суммой элементов и запишите максимальное из чисел в ней (если пар с минимальной суммой элементов несколько, то в ответ следует выбрать максимальное число из последней пары). В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var17.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
min_sum = 20000
for i in range(1, len(nums)):
s = nums[i-1] ** 2 + nums[i] ** 2
if s % 2 and s > 90 :
pair_count += 1
sm = nums[i-1] + nums[i]
if sm <= min_sum:
min_sum = sm
max_num = max(nums[i-1], nums[i])
print(pair_count, max_num)
Ответ: \(3070\) \(-9561\)
2022-16
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма модулей элементов пары имеет значение, не превосходящее \(200\) и при этом не менее \(50\), затем минимальное из чисел, которые являются элементами таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var16.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
min_num = 10000
for i in range(1, len(nums)):
if 50 <= abs(nums[i-1]) + abs(nums[i]) <= 200:
pair_count += 1
min_num = min(min_num, nums[i-1], nums[i])
print(pair_count, min_num)
Ответ: \(1\) \(-92\)
2022-15
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма модулей элементов пары имеет значение, не превосходящее \(700\) и при этом не менее \(100\), затем максимальное из чисел, которые являются элементами таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var15.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
max_num = -10000
for i in range(1, len(nums)):
if 100 <= abs(nums[i-1]) + abs(nums[i]) <= 700:
pair_count += 1
max_num = max(max_num, nums[i-1], nums[i])
print(pair_count, max_num)
Ответ: \(11\) \(387\)
2022-14
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба элемента имеют значения меньше \(310\), затем минимальную из сумм кубов элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var14.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
min_cube = 100000000
for i in range(1, len(nums)):
if nums[i-1] < 310 and nums[i] < 310:
pair_count += 1
min_cube = min(min_cube, nums[i-1] ** 3 + nums[i] ** 3)
print(pair_count, min_cube)
Ответ: \(1457\) \(-1891619136576\)
2022-13
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба элемента имеют значения меньше \(450\), затем максимальную из сумм кубов элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var13.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
max_cube = -100000000
for i in range(1, len(nums)):
if nums[i-1] < 450 and nums[i] < 450:
pair_count += 1
max_cube = max(max_cube, nums[i-1] ** 3 + nums[i] ** 3)
print(pair_count, max_cube)
Ответ: \(1533\) \(81262125\)
2022-12
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы один элемент пары превосходит \(300\), затем минимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var12.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
min_sq = 100000000
for i in range(1, len(nums)):
if nums[i-1] > 300 or nums[i] > 300:
pair_count += 1
min_sq = min(min_sq, nums[i-1] ** 2 + nums[i] ** 2)
print(pair_count, min_sq)
Ответ: \(4024\) \(176285\)
2022-11
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых хотя бы один элемент пары превосходит \(700\), затем максимальную из сумм квадратов элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var11.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
max_sq = -10000
for i in range(1, len(nums)):
if nums[i-1] > 700 or nums[i] > 700:
pair_count += 1
max_sq = max(max_sq, nums[i-1] ** 2 + nums[i] ** 2)
print(pair_count, max_sq)
Ответ: \(3902\) \(197073925\)
2022-10
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-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\)
2022-9
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма элементов не менее \(100\) и хотя бы одно число в паре отрицательное, затем максимальное из произведений элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var9.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
max_prod = -100000000
for i in range(1, len(nums)):
if nums[i-1] + nums[i] > 99 and (nums[i-1] < 0 or nums[i] < 0):
pair_count += 1
max_prod = max(max_prod, nums[i-1] * nums[i])
print(pair_count, max_prod)
Ответ: \(1137\) \(-2655\)
2022-8
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются оканчиваются на нечётные цифры, различные для элементов пары, затем минимальное из произведений модулей элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var8.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
min_mod = 100000000
for i in range(1, len(nums)):
if abs(nums[i-1]) % 10 != abs(nums[i]) % 10 and nums[i] % 2 and nums[i-1] % 2:
pair_count += 1
min_mod = min(min_mod, abs(nums[i-1] * nums[i]))
print(pair_count, min_mod)
Ответ: \(864\) \(4683\)
2022-7
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются оканчиваются на одну и ту же нечётную цифру, затем максимальное из произведений модулей элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var7.txt')
nums = list(map(int, f.readlines()))
pair_count = 0
max_mod = -10000
for i in range(1, len(nums)):
if abs(nums[i-1]) % 10 == abs(nums[i]) % 10 and nums[i] % 2:
pair_count += 1
max_mod = max(max_mod, abs(nums[i-1] * nums[i]))
print(pair_count, max_mod)
Ответ: \(227\) \(96784219\)
2022-6
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на цифру \(7\), затем минимальный из модулей разности элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var6.txt')
nums = list(map(int, f.readlines()))
pairs = 0
min_sub = 20000
for i in range(1, len(nums)):
if abs(nums[i-1]) % 10 == 7 and abs(nums[i]) % 10 == 7:
pairs += 1
min_sub = min(min_sub, abs(nums[i-1]-nums[i]))
print(pairs, min_sub)
Ответ: \(47\) \(80\)
2022-5
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \( 10~000\) включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых оба числа оканчиваются на цифру \(5\), затем максимальный из модулей разности элементов таких пар. В данной задаче под парой подразумевается два подряд идущих элемента последовательности.
Решение:
Python
f = open('17var5.txt')
nums = list(map(int, f.readlines()))
pairs = 0
max_sub = -20000
for i in range(1, len(nums)):
if abs(nums[i-1]) % 10 == 5 and abs(nums[i]) % 10 == 5:
pairs += 1
max_sub = max(max_sub, abs(nums[i-1]-nums[i]))
print(pairs, max_sub)
Ответ: \(33\) \(16600\)
Демо-2022
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(-10~000\) до \(10~000\) включительно. Определите количество пар последовательности, в которых хотя бы одно число делится на \(3\), а сумма элементов пары не более максимального элемента последовательности, кратного \(3\). В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 2439 998
Статград-22-3-2
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых один из двух элементов делится на \( 5 \), а другой меньше среднего арифметического всех нечётных элементов последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.
Например, в последовательности \( ( 8 \,\, 10 \,\, 2 \,\, 7 \,\, 5 \,\, 1) \) есть две подходящие пары: \( ( 10 \,\, 2) \) и \( ( 5 \,\, 1) \), в ответе для этой последовательности надо записать числа \(2\) и \( 12 \).
Решение:
...
Ответ: -
Статград-22-3-1
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых один из двух элементов делится на \( 3 \), а другой меньше среднего арифметического всех чётных элементов последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.
Например, в последовательности \( ( 1 \,\, 3 \,\, 8 \,\, 9 \,\, 4) \) есть две подходящие пары: \( ( 1 \,\, 3) \) и \( ( 9 \,\, 4) \), в ответе для этой последовательности надо записать числа \(2\) и \( 13 \).
Решение:
...
Ответ: -
Статград-22-2-2
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится на \( 5 \) и хотя бы один из двух элементов меньше среднего арифметического всех нечётных элементов последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.
Например, в последовательности \( ( 8 \,\, 10 \,\, 2 \,\, 9 \,\, 5) \) есть две подходящие пары: \( ( 10\,\, 2) \) и \( ( 9 \,\, 5) \), в ответе для этой последовательности надо записать числа \(2\) и \( 14 \).
Решение:
...
Ответ: -
Статград-22-2-1
Файл содержит последовательность неотрицательных целых чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится на \( 3 \) и хотя бы один из двух элементов меньше среднего арифметического всех чётных элементов последовательности. В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.
Например, в последовательности \( ( 3 \,\, 8 \,\, 9 \,\, 4) \) есть две подходящие пары: \( ( 3\,\, 8) \) и \( ( 9 \,\, 4) \), в ответе для этой последовательности надо записать числа \(2\) и \( 13 \).
Решение:
...
Ответ: -
Статград-22-1-2
Файл содержит последовательность неотрицательных чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится на \( 5 \), а их сумма делится на \(7\). В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.
Например, в последовательности \( (2 \,\, 5 \,\, 9 \,\, 8 \,\, 10 )\) есть две подходящие пары: \( (2 \,\, 5 ) \) и \( (5 \,\, 9 ) \), в ответе для этой последовательности надо записать числа \( 2 \) и \( 14 \).
Решение:
...
Ответ: -
Статград-22-1-1
Файл содержит последовательность неотрицательных чисел, не превышающих \( 10 \, 000\). Назовём парой два идущих подряд элемента последовательности. Определите количество пар, в которых хотя бы один из двух элементов делится на \( 3 \), а их сумма делится на \(5\). В ответе запишите два числа: сначала количество найденных пар, а затем — максимальную сумму элементов таких пар.
Например, в последовательности \( (2 \,\, 3 \,\, 7 \,\, 8 \,\, 9 )\) есть две подходящие пары: \( (2 \,\, 3 ) \) и \( (3 \,\, 7 ) \), в ответе для этой последовательности надо записать числа \( 2 \) и \( 10 \).
Решение:
...
Ответ: -