Лучшие помощники
- Megamozg 2200 б
- Matalya1 1800 б
- DevAdmin 1705 б
- arkasha_bortnikov 895 б
- Dwayne_Johnson 860 б
26 декабря 2022 00:47
630
Помогите Срочно!!!Задача 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
·
Хороший ответ
28 декабря 2022 00:47
Остались вопросы?
Еще вопросы по категории Информатика
определение: стандарт на представление и преобразование передаваемой по сети информации - это...(8 букв)...
Пусть / – целочисленное деление. Тело функции F(n) задано следующими строчками и условиями: F(n) = 1, при n F(n) = F(n - 2) · (n / 3), при...
Составить кроссворд из 10 терминов по информатике 7 класс...
Какими клавишами можно скопировать текст в буфер обмена? А) Ctrl + Ins Б) Shift + Del В) Alt + Ctrl Г) Shift + Ins...
Что можно изменять в процессе форматирования символов, абзацев?...
Все предметы