С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.79/125: Рейтинг темы: голосов - 125, средняя оценка - 4.79
18 / 18 / 14
Регистрация: 27.11.2011
Сообщений: 51

Каждый робот живет 3 года после сборки. Сколько роботов будет через N лет?

29.11.2011, 21:55. Показов 25168. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сообщество роботов живет по следующим законам: один раз в год они объединяются а полностью укомплектованные группы по 3 или 5 роботов(причем число групп из 3-х роботов-максимально возможное). За год группа из 3-х роботов собирает 5 новых роботов, а группа из 5 роботов - 9 новых роботов.
Каждый робот живет 3 года после сборки. Известно начальное количество роботов(k>7, все они только что собраны). Определить сколько роботов будет через N лет.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.11.2011, 21:55
Ответы с готовыми решениями:

Определить, через сколько лет будет погашена ссуда
Некто взял ссуду в банке величиной А руб. под В % годовых. Ежегодно заемщик вносит платежи в счет ссуды в С руб. Написать программу,...

Определить, через сколько лет будет погашена ссуда
1. Через прямоугольное окошко размером P*Q Винни -Пух выбросил круглый шарик радиусом R. Написать программу, определяющую, пройдет ли шарик...

Выведите на экран через сколько лет сумма будет В
Задача такова. "Процент по вкладам 15%. Первоначальный взнос А. Выведите на экран через сколько лет сумма будет В . А и В водится с...

26
29.11.2011, 22:04

Не по теме:

Решил на ночь всем мозг добить ? :stop:

0
18 / 18 / 14
Регистрация: 27.11.2011
Сообщений: 51
29.11.2011, 22:09  [ТС]
Кому не понятно как происходит распределение роботов по группам, объясню:
для начала нам нужно знать сколько роботов в данный год(изначальное количество мы вводим). Согласно условию количество групп из 3-х роботов должно быть максимально возможным(т.е. н-р: число роботов N(20) мы делим на 3, получаем 9 групп по 3, но т.к. остается еще 2 робота которых не впихнеш ни в группу из 3-х ни в группу из 5-ти, т.е. надо провести расчет который распределит так чтобы все роботы были распределены по группам и было максимальное число групп из 3- роботов).
н-р для числа 20 распределение произойдет таким образом(3+3+3+3+3+5)

Добавлено через 56 секунд
Цитата Сообщение от WebMax 2.0 Посмотреть сообщение
Решил на ночь всем мозг добить ?
я себе этим целый день мозг добиваю
0
--\.founder./--
 Аватар для WebMax 2.0
565 / 565 / 392
Регистрация: 20.10.2011
Сообщений: 867
29.11.2011, 22:21
Pascal
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
Uses Crt;
Var i,k,n,s,s0,s1,s2,s3,x:integer;
BEGIN
ClrScr;
Write('Введите кол-во роботов: ');
Readln(k);
Write('Кол-во лет = ');
Readln(n);
s0:=k;
s1:=0;
s2:=0;
s3:=0;
for i:=0 to n do
begin
s:=s0+s1+s2+s3;
Case s mod 5 of
0: x:=(s div 5)*9;
1: if s=1
then x:=0
else x:=(((s-5) div 5)*9)+10;
2: if s=2
then x:=0
else if s=7
then x:=10
else x:=(((s-10) div 5)*9)+20;
3 : x:=((s div 5)*9)+5;
4 : if s=4
then x:=5
else x:=(((s-5) div 5)*9)+15;
end;
s3:=s2;
s2:=s1;
s1:=s0;
s0:=x;
end;
Writeln('Через ',n, ' лет будет ',s,' роботов');
END.
0
18 / 18 / 14
Регистрация: 27.11.2011
Сообщений: 51
29.11.2011, 22:40  [ТС]
работает неправильно

Добавлено через 10 минут
мне ее сегодня дал препод.. у нее в ответах написано что например если дано -10 роботов то через 10 лет будет хз сколько роботов
0
--\.founder./--
 Аватар для WebMax 2.0
565 / 565 / 392
Регистрация: 20.10.2011
Сообщений: 867
29.11.2011, 22:41
Да ну нафиг . Лучше с утречка такими задачками подбадриваться, а как это -10 роботов ?) :cofee2:
0
18 / 18 / 14
Регистрация: 27.11.2011
Сообщений: 51
29.11.2011, 22:55  [ТС]
ну наверное в долг взяли

Добавлено через 3 минуты
они у тебя в коде через 3 года не подыхают чтоли?
0
--\.founder./--
 Аватар для WebMax 2.0
565 / 565 / 392
Регистрация: 20.10.2011
Сообщений: 867
29.11.2011, 22:59
Ладно пофиг подыхают или нет ! Постараюсь о ней щас не думать , кошмар !
0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 00:28
Бампаю старую тему
Требуется проверка правильности программы
Больше всего интересует правильная формула поиска сочетаний. Не нужно кидать ссылок - бороздил интернет где-то полчаса и так и не нашел правильного ответа.
Pascal
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
  var a:array[1..100] of int64;
    t,n,k,m,j:int64;
    i:integer;
begin
assign(input, 'input.txt'); reset(input); 
assign(output, 'output.txt'); rewrite(output);
read(k,n);
a[1]:=k;
for i:=2 to n do
  begin
   j:=(a[i-1] div 5);  {групп по пять роботов} 
    repeat
    t:=j*9 + ((a[i-1]-(j*5)) div 3)*5;  {ищет максимальное сочетание групп по пять и по 3 робота}
    if  t>m then m:=t;
    dec(j);
    until j=-1;
   if i>3 then
    begin
    if i=4 then a[i]:=(a[i-1]-a[i-3])+m
     else
       a[i]:=(a[i-1]-(a[i-3]-a[i-4]))+m {созданные - умирающие роботы}
    end
     else a[i]:=a[i-1]+m; {первые два шага}
  end;
write(a[n]);
end.
0
Модератор
10401 / 5689 / 3399
Регистрация: 17.08.2012
Сообщений: 17,334
24.07.2014, 13:09
Цитата Сообщение от Akcent2 Посмотреть сообщение
причем число групп из 3-х роботов-максимально возможное
Цитата Сообщение от Akcent2 Посмотреть сообщение
k>7
Цитата Сообщение от CrazzyBeer Посмотреть сообщение
бороздил интернет где-то полчаса
А самому догадаться не алё? Если немного подумать, то станет ясно, что количество групп по 5 роботов определяется остатком от деления на 3 общего количества роботов, без никаких циклов. Если остаток 0 - групп по 5 роботов 0, если 1 - то 2, если 2 - то 1. Пусть всего роботов p, количество групп по 3 - g3, по 5 - g5, тогда так, к примеру:
Pascal
1
2
3
4
5
6
  case p mod 3 of
   0: g5 := 0;
   1: g5 := 2;
   2: g5 := 1
  end;
  g3 := (p - 5 * g5) div 3;
Добавлено через 10 минут
Можно без case:
Pascal
1
2
  g5 := (5 * (p mod 3)) mod 3;
  g3 := (p - 5 * g5) div 3;
0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 14:04
Никак не мог догадаться, как можно получить максимальную производительность роботов

Добавлено через 22 минуты
Моя программа, основанная на ваших вычислениях групп валится на 5 тесте a c m p
Когда как программа с перебором валится на 16ом
0
24.07.2014, 14:06

Не по теме:

CrazzyBeer, что-то я не понимаю... Какие предпосылки позволили Вам прийти к выводу, что я Вас оскорбил? Не ведаю, за что, но извините.

Или, может, я неверно понял условие задачи?

0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 14:07
Уже извиняюсь я, видимо, ибо не заметил , что отсутствует один пункт, который есть в моей задаче.
роботы объединяются так, чтобы собрать за год наибольшее количество новых роботов;
Так что нужна именно максимальная производительность, но я не понимаю, почему перебор не работает
0
Модератор
10401 / 5689 / 3399
Регистрация: 17.08.2012
Сообщений: 17,334
24.07.2014, 14:13
Да. Насчёт условия. По существующему условию максимальным должно быть количество групп из 3 роботов. Может быть, по Вашему условию, требуется максимальный выход продукции?

Насчёт тестов. Нужно смотреть, что за тестирующий сайт.

Не по теме:

Вообще, на этих сайтах тесты достаточно синтетические, зачастую притянутые за уши. По моему мнению, ничему хорошему на них научиться нельзя.



Добавлено через 1 минуту

Не по теме:

А, опоздал... Значит, всё-таки требуется максимальный выход роботов, а не как в существующем условии...

0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 14:17
Я бы скинул вам ссылку, но она подвергнется звездочкизации цензуре. Это 166 задача на a c m p . r u
Сижу, в общем и мучаюсь. Опустился даже до перебора. Хотя, если поставить большие цифры - перебор будет отбирать много времени
Может и не в группах дело. Хотя, я почти уверен, что правильно вычисляю умирающих роботов
0
Модератор
10401 / 5689 / 3399
Регистрация: 17.08.2012
Сообщений: 17,334
24.07.2014, 14:34
Вроде бы, перебор не требуется...

Каждый робот делает в случае с 3 роботами 5/3=1.6(6) робота, в случае с 5 роботами 9/5=1.8 робота. Очевидно, должно быть максимальное количество групп из 5 роботов, а из 3 - сколько получится. Тогда по остатку деления общего количества роботов на 5 можно определить количество групп из 3 роботов:
0 - 0 групп;
1 - 2;
2 - 4;
3 - 1;
4 - 3.
Pascal
1
2
3
4
5
6
7
8
  case p mod 5 of
   0: g3 := 0;
   1: g3 := 2;
   2: g3 := 4;
   3: g3 := 1;
   4: g3 := 3
  end;
  g5 := (p - 3 * g3) div 5;
Так, что ли... Насчёт утилизации потом гляну.

Не по теме:

Пора на работу бежать, буду на форуме ночью.



Добавлено через 4 минуты
Да, и в условии задачи есть двойственность... Вот дано p штук новых роботов, как эти железяки решат: прямо сразу новых собирать или всё же через год?
0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 14:40
Я тоже об этом думал. Когда же умирают - до сборки или после сборки?

Добавлено через 49 секунд
Я сейчас опробую вариант со смертью до сборки

Добавлено через 2 минуты
Говорится, что объединяются в начале года. Тобишь сначала собирают, а потом умирают.
А в условии ничего не говорится о ограничении в возможностях сборки
0
Модератор
10401 / 5689 / 3399
Регистрация: 17.08.2012
Сообщений: 17,334
24.07.2014, 15:02
А, знаю этот сайт... Тогда уточнённое условие задачи:
Сообщество роботов живет по следующим законам:

один раз в начале года они объединяются в группы по три или пять роботов;
за год группа из трех роботов собирает 5 новых, а группа из 5 роботов – 9 новых;
роботы объединяются так, чтобы собрать за год наибольшее количество новых роботов;
каждый робот живет ровно три года после сборки.
В начале первого года было K роботов и все они были только что собраны.

Требуется написать программу, которая найдет количество роботов в начале N-го года.

Входные данные

Входной файл INPUT.TXT содержит записанные через пробел числа K (1 ≤ K ≤ 500) и N (1 ≤ N ≤ 100).

Выходные данные

Выходной файл OUTPUT.TXT должен содержать одно число - количество роботов в начале N-го года. Количество роботов меньше, чем 231.

Примеры

INPUT.TXTOUTPUT.TXT
13 28
28 222
Ну, теперь ясно из таблички этой... Нет, не сразу собирать начинают, а в конце года, и причём так, что успевают собрать к началу следующего года. И, чтобы логически запутать тестируемого, количество роботов определяется в начале следующего года. Вот, первая строка таблицы:

Начало 1 года. Есть 3 робота;
конец 1 года. Аврал, разбиваемся на группы, собираем...;
начало 2 года. Подсчёт. Была одна группа из 3 роботов, собрала ещё 5. Всего 8.
Ура.

В голове дыра. Нигде в условии не сказано, что делать, если К=1 или К=2 или К=4.

Не по теме:

Я же говорю, ничему хорошему эти сайты не учат.

По логике, в первых двух случаях сборка роботов происходить не будет, так как для сборки требуется бригада минимум из 3 роботов, и какое бы ни было N, в начале 4 года будет К=0. Думаю, что при К=4 в конце первого года один механизм будет лениться. Вот такое следствие из условия.

Добавлено через 2 минуты

Не по теме:

Да, и пусть с ней, Вашей ссылкой... Сам же я и попросил, тем более, теперь исчезновение этого сайта или задачи №166 на нём не приведёт к потере информации для нашего форума. Не буду стирать или звёзды ставить, незачем.

0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 15:02
Да. Если роботов начальных будет меньше трех, тогда в начале 4 года они умрут, а вот если 4, тогда ленится, да.
0
 Аватар для CrazzyBeer
3 / 3 / 6
Регистрация: 24.03.2014
Сообщений: 65
24.07.2014, 15:02

Вот
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.07.2014, 15:02
Помогаю со студенческими работами здесь

Определить, через сколько лет на счету будет T рублей при заданных условиях
В банк положили на счет S рублей.Через сколько лет на счету будет T рублей,если 1)банк ежегодно начисляет на сумму вклада Z% 2)владелец...

Каждый робот живет 3 года после сборки. Сколько роботов будет через N лет?
Сообщество роботов живет по следующим законам: один раз в год они объединяются в полностью укомплектованные группы по 3 или 5 роботов...

Сообщество роботов. Сколько роботов будет через N лет
Надо решить эту задачу: Сообщество роботов живет по следующим законам: - один раз в начале года они объединяются в группы по 3 или 5...

Вычислить, сколько роботов будет через определенное количество лет
Есть определенное количество роботов (ввести с клавиатуры). В начале года они делятся на группы по 5 и по 3 работа. За год группа из 5...

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru