Лучшие помощники
- Megamozg 2205 б
- Matalya1 1800 б
- DevAdmin 1720 б
- arkasha_bortnikov 900 б
- Dwayne_Johnson 870 б
27 декабря 2022 01:52
697
Помогите Срочно!!!Задача 3: Конструктор
Сереже на первое сентября подарили магнитный конструктор, состоящий из брусков разной длины, которые могут соединяться концами друг с другом. В подарочном наборе все бруски уложены в порядке неубывания длины, причем бруски могут иметь одинаковую длину — это очень важно для Серёжи, потому что он будет собирать из брусков равносторонние треугольники для своего большого проекта. Для этого проекта Серёже нужно очень много деталей такой формы, и он хочет понять, сколько всего возможно собрать равносторонних треугольников из конструктора для последующего их одновременного использования в проекте. Размеры треугольников могут быть различными, но все они должны быть равносторонними. Определите, какое максимальное количество равносторонних треугольников можно собрать из конструктора (брусок, использованный в одном треугольнике, уже не может быть использован в другом).
Входные данные
В первой строке входных данных дано целое число n — количество брусков (1 ≤ n ≤ 105). В следующих n строках даны длины брусков конструктора — целые числа от 1 до 109 по одному в строке. Числа даны в неубывающем порядке.
Выходные данные
Требуется вывести одно целое число — максимально возможное число равносторонних треугольников.
Система оценки
Решения, правильно работающие при n ≤ 100, будут оцениваться в 50 баллов.
Примеры
Ввод
Вывод
Пояснение
6
1
1
1
1
2
2
1
Можно составить один треугольник из трёх брусков длины 1. Остались бруски длиной 1, 2, 2, из которых нельзя составить равносторонний треугольник.
6
1
1
3
3
5
5
0
Нет трёх брусков равной длины, поэтому ни одного равностороннего треугольника составить нельзя.
1
ответ
#python3
n = int(input())
n_triangles = 0
num = 1
len = 0
for i in range(n):
l = int(input())
if len == l:
num+=1
if num==3:
n_triangles+=1
num = 0
else:
num = 1
len = l
print(n_triangles)
n = int(input())
n_triangles = 0
num = 1
len = 0
for i in range(n):
l = int(input())
if len == l:
num+=1
if num==3:
n_triangles+=1
num = 0
else:
num = 1
len = l
print(n_triangles)
0
·
Хороший ответ
29 декабря 2022 01:52
Остались вопросы?
Еще вопросы по категории Информатика
512 битов- это: 1.2 килобайта ,64 байта,256 байтов,50 байтов. 81 920 битов- это:80 килобайтов.10 килобайтов, 8 килобайтов,1 мегабайт....
Питон. Выведите все элементы списка с четными индексами (то есть A[0], A[2], A[4], ...)....
Информатика 7 класс.Как решать данные задачи,объясните пожалуйста)...
1. Выберите правильный ответ из предложенных вариантов. Что такое компьютерный вирус? 1) Прикладная программа. 2) Системная программа. 3) Программ...
Пирамидальная сортировка 34 31 22 16 29 28 11 27 17 28 38 33 17 29 10...