0 / 0 / 0
Регистрация: 16.01.2021
Сообщений: 13
1

Гири и весы

16.01.2021, 13:52. Показов 928. Ответов 1

Помогите пожалуйста решить задачу c++
Комплект гирь состоит из N гирь различного веса; в Вашем распоряжении имеются два
таких комплекта. Сможете ли Вы уравновесить рычажные весы гирями из этих комплектов,
положив на каждую из чашек по две гири? При этом гири на левой чашке должны иметь
одинаковый вес, а на правой – разный.
Формат входных данных. Первая строка входного файла содержит величину N (1 ≤ N ≤
10000). Вторая строка содержит N целых положительных чисел, не превосходящих 109 – веса
очередной гири.
Формат выходных данных. В первой строке запишите ’Yes’ или ’No’ (без кавычек), в
зависимости от того, имеет ли задача решение. В случае положительного ответа вторая
строка должна содержать веса гирь, лежащих на правой чашке весов (в произвольном
порядке), а третья – вес одной из гирь, лежащих на левой чашке. Если ответ отрицательный,
вторая строка должна содержать наименьший и наибольший вес гирь из комплекта (в
произвольном порядке). Если задача допускает несколько вариантов решения, выведите
любой из них.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.01.2021, 13:52
Ответы с готовыми решениями:

Гири и весы
Условие Комплект гирь состоит из N гирь различного веса; в Вашем распоряжении имеются два таких...

Гири
На Си. Самородок весит н грамм. Есть гири по 100 50 3 1 гр. Взвесить, используя мин колич гирь.

Гири
Университет ИТМО Сакт-петербурга (olymp.ifmo.ru) ежегодно проводит перечневую олимпиаду по...

Парные гири.
Имеются гири с массами 1,2,3,...,N(N<=500000). Hаписать программу, распределяющую эти гири на...

1
817 / 504 / 211
Регистрация: 19.01.2019
Сообщений: 1,196
16.01.2021, 22:41 2
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
#include <iostream>
#include <iterator>
#include <vector>
#include <algorithm>
 
void foo(const std::vector<int>& v) {
    for (auto it(++v.begin()); it < --v.end(); ++it) {
        for (auto r(it + 1); r < v.end() && *r < *it * 2; ++it) {
            if (std::binary_search(v.begin(), it, *it * 2 - *r)) {
                std::cout << "Yes\n" << *r << ' ' << *it * 2 - *r << '\n' << *it;
                return;
            }
        }
    }
    std::cout << "No\n" << v.front() << ' ' << v.back();
}
 
int main()
{
    int n;
    std::cin >> n;
 
    std::vector<int> v(n);
    while (n--) std::cin >> v[n];
 
    std::sort(v.begin(), v.end());
    foo(v);
 
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.01.2021, 22:41
Помогаю со студенческими работами здесь

найти скорость гири
ПОМОГИТЕ ПОЖАЛУЙСТА!!!ДИСТАНЦИОННАЯ ОЛИМПИАДА ОСТАЛОСЬ 6 ЧАСОВ ДО СДАЧИ 6)На наклонной плоскости,...

Имеются гири с массами: 1, 2, ., N граммов
Имеются гири с массами: 1, 2, ..., N граммов. Распределить эти гири на максимально возможное...

Две гири 1 и 2, находящиеся на блоках
Ребят какие есть идеи? Эту задачу можно решать рассматривая два частных случая? Когда m1 будет...

Логическая задача(Продавец и гири)
У продавца есть восемь гирек весом 1,2,3,4,5,6,7 и 8 граммов, внешне не отличимы друг от друга....

Распределить гири на максимально возможное количество пар
Имеются гири с массами 1г, 2г, ...,N г (N &lt;= 10000). Написать алгоритм и программу, распределяющую...

Распределить гири на максимально возможное количество пар
Имеются гири с массами: 1г, 2г,..., N г (N меньше или равно 500000). Написать программу,...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru