Линейная обработка целочисленных данных. Отбор чисел, перебор соседних пар/троек, сложные условия.
Заданий линейки 17 к ЕГЭ по информатике из банка ФИПИ
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в которых только одно из чисел является трёхзначным, а сумма элементов тройки меньше максимального элемента последовательности, оканчивающегося на 17. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def tr(x):
return 100 <= abs(x) <= 999
data = [int(i) for i in open('446B6B.txt')]
mx = max(i for i in data if abs(i) % 100 == 17)
ans = []
for a, b, c in zip(data, data[1:], data[2:]):
if tr(a) + tr(b) + tr(c) == 1:
if a + b + c < mx:
ans.append(a + b + c)
print(len(ans), max(ans))
Ответ: 2781 85899
Номер: 446B6B
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество троек элементов последовательности, в которых только одно из чисел является двузначным, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на 13. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
...
Ответ: 2688 98608
Номер: 5994e6
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в которых ровно два двузначных числа, а квадрат суммы элементов тройки меньше максимального элемента последовательности, оканчивающегося на 33. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
f = open('6_17.txt')
a = [int(i) for i in f]
m = max(i for i in a if abs(i) % 100 == 33)
ans = []
for x, y, z in zip(a, a[1:], a[2:]):
if (10 <= abs(x) <= 99) + (10 <= abs(y) <= 99) + (10 <= abs(z) <= 99) == 2:
if (x + y + z)**2 < m:
ans.append(x + y + z)
print(len(ans), max(ans))
Ответ: 1169 95216
Номер: 1F0F94
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в которых не более двух из трёх элементов являются четырёхзначными числами, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на 25. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек.
В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def tr(x):
return 1000 <= abs(x) <= 9999
data = [int(i) for i in open('FA6c24.txt')]
mx = max(i for i in data if abs(i) % 100 == 25)
ans = []
for a, b, c in zip(data, data[1:], data[2:]):
if tr(a) + tr(b) + tr(c) <= 2:
if a + b + c < mx:
ans.append(a + b + c)
print(len(ans), max(ans))
Ответ: 6315 84523
Номер: FA6c24
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых только один из элементов является двузначным числом, а сумма элементов пары кратна минимальному двузначному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
def tr(x):
return 10 <= abs(x) <= 99
data = [int(i) for i in open('995419.txt')]
mx = min(i for i in data if tr(i))
ans = []
for a, b in zip(data, data[1:]):
if tr(a) + tr(b) == 1:
if (a + b) % mx == 0:
ans.append(a + b)
print(len(ans), max(ans))
Ответ: 150 9930
Номер: 995419
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в каждой из которых есть не менее одного пятизначного числа, а сумма элементов тройки не меньше максимального элемента последовательности, оканчивающегося на 27. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
def tr(x):
return 10000 <= abs(x) <= 99999
data = [int(i) for i in open('204c0F.txt')]
mx = max(i for i in data if abs(i) % 100 == 27)
ans = []
for a, b, c in zip(data, data[1:], data[2:]):
if tr(a) + tr(b) + tr(c) >= 1:
if a + b + c >= mx:
ans.append(a + b + c)
print(len(ans), max(ans))
Ответ: 453 285731
Номер: 204c0F
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек последовательности, в которых все числа одного знака, при этом произведение минимального и максимального элементов тройки больше квадрата минимального элемента последовательности, который оканчивается на 15 и является трёхзначным числом. В ответе запишите количество найденных троек чисел, затем минимальное из произведений максимального и минимального элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
Python
f = open('1_17.txt')
a = [int(i) for i in f]
m = min(i for i in a if 100 <= abs(i) <= 999 and abs(i) % 100 == 15)
ans = []
for x, y, z in zip(a, a[1:], a[2:]):
if (x < 0 and y < 0 and z < 0) or (x > 0 or y > 0 or z > 0):
if min(x, y, z) * max(x, y, z) > m ** 2:
ans.append(min(x, y, z) * max(x, y, z))
print(len(ans), min(ans))
Ответ: 3507 863808
Номер: 8C5A88
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество пар последовательности, в которых сумма элементов меньше минимального положительного элемента последовательности, кратного 110. Гарантируется, что такой элемент в последовательности есть. В ответе запишите количество найденных пар, затем абсолютное значение максимальной из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
m=[int(x)for x in open('349_17.txt')]
m1=[]
m2=[]
for i in range(len(m)):
if m[i]>0 and m[i]%110==0:
m1.append(m[i])
for i in range(len(m)-1):
if (m[i]+m[i+1])<min(m1):
m2.append(m[i]+m[i+1])
print(len(m2),abs(max(m2)))
Ответ: 4974 425
Номер: E89C8A
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 16 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 1214 176024
Номер: 6EA065
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых хотя бы одно число делится на минимальный элемент последовательности, кратный 19. Гарантируется, что такой элемент в последовательности есть. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 142 175430
Номер: 42A7D2
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество пар последовательности, в которых хотя бы одно число отрицательно, а сумма чисел пары меньше количества чисел в последовательности, кратных 32. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
f = open('355_17.txt')
a = [int(i) for i in f]
m = len([i for i in a if abs(i) % 32 == 0])
ans = []
for x, y in zip(a, a[1:]):
if x < 0 or y < 0:
if x + y < m:
ans.append(x + y)
print(len(ans), max(ans))
Ответ: 4969 299
Номер: 655816
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых сумма остатков от деления обоих элементов на 18 равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 285 166436
Номер: 9C8813
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления на 55 хотя бы одного из элементов равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 359 3716
Номер: 133D72
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых сумма остатков от деления обоих элементов на 21 равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 213 171263
Номер: 7478FE
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Её элементы могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых сумма остатков от деления обоих элементов на 15 равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 365 5888
Номер: 45744A
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество троек элементов последовательности, в которых ровно два из трёх элементов являются трёхзначными числами, а сумма элементов тройки не меньше максимального элемента последовательности, оканчивающегося на 13. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек.
В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
...
Ответ: 6 101024
Номер: CE3C83
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в которых хотя бы одно из чисел является трёхзначным, а сумма элементов тройки больше максимального элемента последовательности, оканчивающегося на 17. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
...
Ответ: 74 186215
Номер: F3296A
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество троек элементов последовательности, в которых только одно из чисел является четырёхзначным, а сумма элементов тройки не меньше максимального элемента последовательности, оканчивающегося на 15. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
...
Ответ: 299 196183
Номер: 0C76DB
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество троек элементов последовательности, в которых только одно из чисел является двузначным, а сумма элементов тройки не меньше максимального элемента последовательности, оканчивающегося на 13. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
...
Ответ: 257 197236
Номер: BCC52D
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в которых хотя бы одно из чисел является двузначным, а сумма элементов тройки меньше максимального элемента последовательности, оканчивающегося на 19. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
...
Ответ: 3632 67430
Номер: F61272
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от –100 000 до 100 000 включительно. Определите количество троек элементов последовательности, в которых ровно два из трёх элементов являются трёхзначными числами, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на 21. В ответе запишите количество найденных троек чисел, затем максимальную из сумм элементов таких троек.
В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
Решение:
f = open('308_17.txt')
a = [int(i) for i in f]
m = max(i for i in a if abs(i) % 100 == 21)
ans = []
for x, y, z in zip(a, a[1:], a[2:]):
if (100 <= abs(x) <= 999) + (100 <= abs(y) <= 999) + (100 <= abs(z) <= 999) == 2:
if x + y + z <= m:
ans.append(x + y + z)
print(len(ans), max(ans))
Ответ: 1169 95216
Номер: CF2AF3
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых только один из элементов является трёхзначным числом, а сумма элементов пары кратна минимальному трёхзначному элементу последовательности, оканчивающемуся на 5. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 16 105
Номер: 42698B
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых хотя бы один из элементов является трёхзначным числом, а сумма элементов пары кратна минимальному трёхзначному элементу последовательности, оканчивающемуся на 5. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 13 9500
Номер: E1539C
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых только один из элементов является двузначным числом, а сумма элементов пары кратна максимальному двузначному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
f = open('1_17.txt')
a = [int(i) for i in f]
m = max(i for i in a if 10 <= i <= 99)
ans = []
for x, y in zip(a, a[1:]):
if (10 <= x <= 99) + (10 <= y <= 99) == 1:
if (x + y) % m == 0:
ans.append(x + y)
print(len(ans), max(ans))
Ответ: 16 9702
Номер: FCE3BE
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых хотя бы одно число делится на минимальный элемент последовательности, кратный 21. Гарантируется, что такой элемент в последовательности есть.
В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
f = open('107_17.txt')
a = [int(i) for i in f]
ans = []
m = min(i for i in a if i % 21 == 0)
for x, y in zip(a, a[1:]):
if x % m == 0 or y % m == 0:
ans.append(x + y)
print(len(ans), max(ans))
Ответ: 126 171120
Номер: 8FBD47
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 111 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 185 7968
Номер: B8744D
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых сумма остатков от деления обоих элементов на 11 равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 738 3451
Номер: 38FB28
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 11 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
f = open('308_17.txt')
a = [int(i) for i in f]
ans = []
for x, y in zip(a, a[1:]):
if x % 11 == min(a) or y % 11 == min(a):
ans.append(x + y)
print(len(ans), max(ans))
Ответ: 1784 176353
Номер: 53A3A5
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 20 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 971 176024
Номер: 8CC6CF
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 117 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
...
Ответ: 175 173738
Номер: 212692
Задание выполняется с использованием прилагаемых файлов.
В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых сумма остатков от деления обоих элементов на 14 равна минимальному элементу последовательности. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
f = open('331_17.txt')
a = [int(i) for i in f]
ans = []
for x, y in zip(a, a[1:]):
if x % 14 + y % 14 == min(a):
ans.append(x + y)
print(len(ans), min(ans))
Ответ: 485 4992
Номер: 064AEA