Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.63/32: Рейтинг темы: голосов - 32, средняя оценка - 4.63
S7
10 / 6 / 4
Регистрация: 08.04.2020
Сообщений: 61

Сколько разных треугольников можно собрать из заданного количества палочек

23.05.2021, 10:19. Показов 7397. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Треугольники
Имя входного файла: стандартный ввод
Имя выходного файла: стандартный вывод
Ограничение по времени: 5 секунд
Ограничение по памяти: 256 мегабайт
У Пети есть n разных палочек. Длина i-й палочки равна Li
.
Он собирается сформировать треугольник из трех таких палочек. Обозначим за a, b и c длины
трех палочек, которые Петя хочет использовать для треугольника. Треугольник возможно собрать
из таких палочек, если выполнены следующие условия:
• a < b + c
• b < c + a
• c < a + b
Сколько разных треугольников Петя может собрать? Два треугольника считаются разными,
если некоторая палочка используется только в одном из них. Ломать палочки нельзя. Две разные
палочки, которые имеют одинаковую длину, все равно разные (смотрите примеры).
Формат входных данных
В первой строке дано натуральное число n (3 ⩽ n ⩽ 5000). В следующих n строках даны n
натуральных чисел Li (1 ⩽ Li ⩽ 109) — длины палочек, по одному числу на строке.
Формат выходных данных
Выведите одно число — количество различных треугольников, которые может составить Петя.
Примеры:
Ввод:
4
3
4
2
1
Вывод:
1


Не проходит по времени не знаю как ускорить. Помогите пожалуйста

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <iomanip>
#include <string>
#include <sstream>
#include <cmath>
#include <algorithm>
#include <memory.h>
#include <stdio.h>
#include <vector>
#include <stack>
#include <deque>
#include <queue>
#include <vector>
#include <set>
#include <iterator>
#include <map>
#define ll int
#define endl "\n"
using namespace std;
bool triangle(ll a, ll b, ll c) {
    return (a + b) > c && (a + c) > b && (b + c) > a;
}
signed main() {
    ios_base::sync_with_stdio(0);
    cin.tie(NULL);
    cout.tie(NULL);
    ll n;
    cin >> n;
    vector <ll> a(n);
    ll i, j, k;
    for (i = 0; i < n; i++) {
        cin >> a[i];
    }
    ll ans = 0;
    sort(a.rbegin(), a.rend());
    for (i = 0; i < n - 2; i++) {
        if (triangle(a[i], a[i + 1], a[i + 2]) == 0) {
            continue;
        }
        for (j = i + 1; j < n - 1; j++) {
            if (triangle(a[i], a[j], a[j + 1]) == 0) {
                break;
            }
            for (k = j + 1; k < n; k++) {
                if (triangle(a[i], a[j], a[k])) {
                    ans++;
                }
                else {
                    break;
                }
            }
        }
    }
    cout << ans;
    return 0;
}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.05.2021, 10:19
Ответы с готовыми решениями:

Определить по введенным данным сколько из отрезков можно собрать треугольников
Нужно написать программу ,которая будет определять по введенным данным (данные=длины отрезков),сколько из этих отрезков можно собрать...

Определить, сколько прямоугольных треугольников можно создать из заданного набора точек
Помогите решить задачу. Дано множество точек на плоскости. Определить, сколько прямоугольных треугольников можно создать из этого...

Вывести слово, которое можно выложить из данного количества палочек
256 мегабайт, 2 секунды У пятиклассника Димы есть N счётных палочек, и он очень любит выкладывать из этих палочек слова. Однажды...

28
09.07.2022, 23:09
Студворк — интернет-сервис помощи студентам

Не по теме:

S7, а в лагерь то съездили ? )

0
S7
10 / 6 / 4
Регистрация: 08.04.2020
Сообщений: 61
10.07.2022, 19:18  [ТС]
Если вы про Сириус, то да, мне удалось пройти на смену ИнформатикаЮниоры(2021). В этом году тоже в Сириус попробую пройти на ИнформатикаРегионы(2022).
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
10.07.2022, 19:23
Цитата Сообщение от S7 Посмотреть сообщение
Если вы про Сириус
Я думал настоящий лагерь, с играми, походами и прочим весельем.

Добавлено через 1 минуту
Цитата Сообщение от S7 Посмотреть сообщение
попробую пройти на ИнформатикаРегионы(2022).
Это для чего ?
Там дипломы дают ? Направление на работу ? What is "Сириус" ?
0
S7
10 / 6 / 4
Регистрация: 08.04.2020
Сообщений: 61
10.07.2022, 19:24  [ТС]
SmallEvil, тогда бы я не мог написать тот Декартач в коде, который я кинул выше. Про Сириус можешь в гугле почитать, но если кратко, то это образовательный центр в Сочи.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
10.07.2022, 19:32
Цитата Сообщение от S7 Посмотреть сообщение
то это образовательный центр в Сочи.
Он платный ? Про диплом, корочку еще вопрос актуален.
Как давно он действует. Не утратил репутацию, как в Украине "Компьютерная Академия ШАГ" ?
По том что я вижу тут на форуме, из тех кто обращается (Сириусянцев ), мало кто способен сам реально конструктивно кодить.

Цитата Сообщение от S7 Посмотреть сообщение
тогда бы я не мог написать тот Декартач в коде, который я кинул выше.
Последний код от Вас ? Выглядит нормально. Хотя и не разбирался.

Добавлено через 2 минуты
Цитата Сообщение от SmallEvil Посмотреть сообщение
из тех кто обращается (Сириусянцев ),
и задачи там череззадовжоповыверет написаны (ударение в последнем слове на букву 'и')
0
S7
10 / 6 / 4
Регистрация: 08.04.2020
Сообщений: 61
10.07.2022, 19:41  [ТС]
SmallEvil, бесплатный, только там отбор пройти надо. Там только школьники,на информатике изучают не промышленное программирование, а олимпиадное, так что ни диплом, ни корочку не дают.Не знаю сколько он работает, но вроде с 2014 и является самым авторитетным местом для получения знаний для всех школьников связанных с различными олимпиадами.В основном те, кто задают вопросы на форуме по простым задачам из Сириуса туда не проходят.
Можете почитать, если вам интересно
https://sochisirius.ru/
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
10.07.2022, 19:52
S7, спасибо за ответ, теперь приблизительно понятно.
Цитата Сообщение от S7 Посмотреть сообщение
Можете почитать, если вам интересно
Да, интересно, позже почитаю.

Еще.
Есть международный ИТ-конкурс ImagineCup, вроде.
Тоже для школьников и студентов, есть много , не знаю как скзать, номинаций.
Если есть возможность туда попасть через Сириус, обязательно поучаствуйте.
Если нет, то можно и самому записаться.
Если уже интерисует программирование и ИТ.

Добавлено через 1 минуту
Цитата Сообщение от SmallEvil Посмотреть сообщение
Есть международный ИТ-конкурс ImagineCup, вроде.
Хотя в текущей ситуации, это я не подумав написал ...
0
S7
10 / 6 / 4
Регистрация: 08.04.2020
Сообщений: 61
10.07.2022, 19:53  [ТС]
SmallEvil, к сожалению вы правы
0
738 / 705 / 110
Регистрация: 29.05.2015
Сообщений: 4,356
13.07.2022, 20:52
А как образовательный центр в Сочи относится к тому, что чел выдаёт форумное решение за своё?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.07.2022, 20:52

Перебрать все возможные комбинации соединений для N треугольников M палочек
Всем доброго времени суток. Возникла необходимость в вашей помощи. Пока я нахожусь на стадии обдумывания задачи, так что можно отвечать...

Даны длины отрезков. Подсчитать, сколько можно построить треугольников из этих отрезков, и напечатать площади этих треугольников
Даны длины отрезков a,b,c,d. Подсчитать, сколько можно построить треугольников из этих отрезков, и напечатать площади этих треугольников....

Подсчитать сколько треугольников можно составить из чисел
помогите,ребят 1)дан одномерный массив Х,состоящий из 20 целых чисел.Составить программу,которая подсчитывает сколько треугольников...

Сколько треугольников можно составить из имеющихся сторон
Кто-нибудь подскажите, как можно быстро определить кол-во треугольников, которые можно составить из имеющихся n сторон, n&lt;=4500

Сколько треугольников можно создать из множества точек
Создать функцию, определяющую расстояние между двумя точками по координатам. Дано множество точек плоскости (их координаты). Определите,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru