Processing math: 100%

Районная олимпиада 2019-2020 информатика


Задача A. Равнобедренные треугольники

Ограничение по времени:
1 секунда
Ограничение по памяти:
256 мегабайт

Треугольник называется равнобедренным, если хотя бы две из трёх сторон имеют одинаковую длину. Посчитайте количество равнобедренных треугольников, у которых длина каждой стороны - целое число от 1 до N. Не забывайте, что треугольник существует только в том случае, когда длина каждой стороны меньше суммы длин двух других сторон.
Формат входного файла
В единственной строке вводится одно натуральное число N.
Формат выходного файла
Выведите количество подходящих треугольников.
Система оценки
Это задача состоит из 10 тестов, каждый оценивается в 10 баллов:
  1. 2 теста при 1<=N<=100
  2. 3 теста при 1<=N<=5000
  3. 5 тестов при 1<=N<=106
Пример:
Вход
4
Ответ
12
Замечание
Подходящие треугольники:
1 1 1
2 2 1
2 2 2
2 2 3
3 3 1
3 3 2
3 3 3
3 3 4
4 4 1
4 4 2
4 4 3
4 4 4
посмотреть в олимпиаде

Комментарий/решение:

  0
5 года 3 месяца назад #

показать/скрыть код

C++

пред. Правка 3   0
5 года 3 месяца назад #

показать/скрыть код

C++

  0
5 года 3 месяца назад #

Есть более краткий код

показать/скрыть код

C++

пред. Правка 2   0
4 года 2 месяца назад #

пред. Правка 2   0
4 года 10 месяца назад #

показать/скрыть код

C++

  3
4 года 6 месяца назад #

показать/скрыть код

C++

  14
4 года 4 месяца назад #

показать/скрыть код

C++

  0
4 года 4 месяца назад #

показать/скрыть код

C++

  0
3 года 1 месяца назад #

показать/скрыть код

C++

  0
2 года 4 месяца назад #

#include <iostream>

using namespace std;

int main (){

long N;

cin >> N;

cout << ((N / 2) * (N / 2)) + ((N - (N / 2)) * N);

}

пред. Правка 2   0
2 года 1 месяца назад #

пред. Правка 2   0
2 года 1 месяца назад #

пред. Правка 2   0
2 года 1 месяца назад #

  0
2 месяца назад #

N = int(input())

count = 0

for i in range(1,N+1):

for c in range(1,N+1):

if i+i > c:

count = count + 1

print(count)