Лучшие помощники
- Megamozg 2180 б
- Matalya1 1800 б
- DevAdmin 1690 б
- Dwayne_Johnson 840 б
- arkasha_bortnikov 835 б
27 декабря 2022 01:52
414
Помогите Срочно!!!Задача 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
Остались вопросы?
Еще вопросы по категории Информатика
Дана программа. Введи данную программу в Паскаль. program perimetr_1; var a,b,p:real; begin a: = 9; b: = 9; p:=2*(a+b); writeln('p=',p:5:0) en...
Найти сумму чисел больших 25 из 5 введенных. Паскаль...
Факсимильный аппарат- это...
статья, набранная на компьютере, содержит 16 страниц, на каждой странице 32 строки, в каждой строке 20 символов. Определите информационный объем стать...
как называется часть памяти компьютера в которую поподает скопированный и вырезанный фрагмент текста?...
Все предметы