Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
 Аватар для kramon123
0 / 0 / 0
Регистрация: 01.12.2020
Сообщений: 12

Найти ошибку в решении задачи

03.05.2021, 07:52. Показов 763. Ответов 2

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста, найти ошибку в решении задачи!

Условие:
Среди пауков проходит конкурс на самую упругую паутину. В нём участвуют K пауков, испытывающих свою паутину. У каждого паука паутинка сжимается под действием силы упругости и растягивается под действием силы тяжести паука за одно и то же время T (1<=T<=10^6). Один конец паутинки прикреплён к пауку, другой закреплён на ветке. Пауки одновременно прыгают с неё, начиная совершать колебания. Цель конкурса - найти наименьшее время, когда все паутинки у пауков одновременно будут в растянутом состоянии, или сказать, что это невозможно.

Формат ввода:
В первой строке дано число K - количество пауков на конкурсе (1<=K<=60). Во второй строке расположены K чисел, задающие время сжатия (растяжения) паутины.

Формат файла выходных данных:
Выведите наименьшее время, когда все паутинки будут в растянутом состоянии. Если это невозможно, то выведите -1.

Пример:
Ввод:
3
1 1 3
Вывод:
3

Моё решение:
Я руководствовался тем, что наименьшее время, когда все паутины растянуты - это НОК соответствующих времён растяжения. Ещё должно выполняться условие растянутости паутины - она растягивается на нечётный счёт. Я имею ввиду, что паук прыгнул вниз (1) - вверх (2) - вниз (3) - вверх (4) и т.д. Т.е. паутина в растянутом положении только тогда, когда счёт принимает нечётное значение. Таким образом я вывел условие, что если частное НОК и каждого момента времени принимает нечётное значение, тогда задача выполняется выполняется и НОК - ответ, который мы выводим. Иначе задача не выполняется и мы выводим -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
#include <iostream>
#include <algorithm>
#include <vector>
#include <numeric>
using namespace std;
 
int main() {
  int n, a;
  cin >> n;
  vector<int> v;
  for (int i = 0; i < n; i++) {
    cin >> a;
    v.push_back(a);
  }
 
  auto lcm = [](int a, int b) {return a * b / __gcd(a, b);};
  int res = accumulate(v.begin(), v.end(), 1, lcm);
 
  if (all_of(v.begin(), v.end(), [res](int i){return res / i % 2 == 1;})) {
    cout << res;
  } else {
    cout << "-1";
  }
  return 0;
}
В чём проблема:
Тестирующая система валит моё решение на 6 тесте из 25. Я не понимаю, в чём ошибка или как решить задачу иначе. Может быть где-то я допустил ошибку в рассуждениях или в коде? Или не учёл возможность какого-то теста с подвохом? Помогите, пожалуйста, не могу понять, в чём дело.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.05.2021, 07:52
Ответы с готовыми решениями:

найти ошибку в решении задачи!
Условие: Дано натуральное число n. Вычислить: 1 + 2 + 4 + 8 + … + 2n. не могу понять,как в цикле фо задать так,что бы в формуле...

Найти ошибку в решении задачи "Шифровка" (acmp)
#include &lt;stdio.h&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;cstdio&gt; #include &lt;algorithm&gt; #include &lt;cstring&gt; #include...

Помогите найти ошибку в решении биквадратного уравнения
Здравствуйте,написал код,проблема в том,если выполняется строка 31,то и всегда будет выполнятся строка под номером 39,как это исправить?...

2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.05.2021, 09:53
А есть увереность, что тестирующая система в принципе кушает лямбды?
1
 Аватар для kramon123
0 / 0 / 0
Регистрация: 01.12.2020
Сообщений: 12
03.05.2021, 10:20  [ТС]
iSmokeJC, Думаю, да, первые 6 тестов ведь зачлись..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.05.2021, 10:20
Помогаю со студенческими работами здесь

Найти ошибку в решении задачи
Здравствуйте, уважаемые программисты форума, дана задача: Пусть функция f(x) вещественной переменной x непрерывна на отрезке и...

Не могу найти ошибку в решении задачи
Сама задача: Найти значения функции X=Y^2 *(Y^2 -Y)/Y при Y={N,N*1,N*2,…,N*M} (N&lt;M). Я её решил,но работает она не правильно,ответьте...

Нужно найти ошибку в решении простой задачи. В интерпретаторе работает, а на проверке нет
Задача такая: К -тая банка У Никиты есть n банок газировки, каждая из которых имеет свой объём. Известно, что полезнее всего пить...

Найдите пожалуйста ошибку в решении задачи
Ответ в задачи решённой с помощью Mathcad методом наименьших квадратов не совпадает с ответом в excel. Будьте добры, найдите пожалуйста...

Исправьте ошибку в решении задачи с разложением предметов по ящикам, пожалуйста
Сколькими способами можно разложить 19 различных предметов по 5 ящикам так, чтобы в 4 ящика легло по 4 предмета, а в оставшиеся - 3...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru