белка263
12.07.2021 15:18

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

задевает другую костяшку (или хотя бы касается ее), это приводит к тому, что дальше будут падать

обе эти костяшки. Необходимо выяснить, сколько всего костяшек упадет.

Входные данные. В первой строке задается натуральное число N (1 < N < 2 ■ 105), определяющее

общее количество костяшек. Во второй строке задается N чисел, определяющих высоты соответствующих костяшек. В третьей строке задается N — 1 число, i-ое из этих чисел определяет расстояние

между i-й и (i + 1)-й костяшкой. Все числа натуральные и не превосходят 109.

Выходные данные. Выведите одно число - количество костяшек, которые упадут после толчка первой

костяшки.

Примеры входных и выходных данных

Ввод ,,,вывод

4 .4

1234

121

3 2

567

48

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Nastyushon
09.03.2020 19:31
//PascalABC.NET
//Версия 3.3, сборка 1634 (14.02.2018)

begin
  var (cost, t, k) := (Arr(15, 70, 125, 230, 440), Arr(1, 5, 10, 20, 60), new integer[5]);
  var n := ReadInteger('n->');
  for var i := 4 downto 0 do
  begin
    k[i] := n div t[i];n := n mod t[i];
  end; 
  if k[0] * cost[0] >= cost[1] then begin k[0] := 0;inc(k[1]); end;
  if k[0] * cost[0] + k[1] * cost[1] >= cost[2] then 
  begin
    k[0] := 0;k[1] := 0;inc(k[2]); 
  end;
  if k[0] * cost[0] + k[1] * cost[1] + k[2] * cost[2] >= cost[3] then 
  begin
    k[0] := 0;k[1] := 0;k[2] := 0;inc(k[3]);
  end;
  if k[0] * cost[0] + k[1] * cost[1] + k[2] * cost[2] + k[3] * cost[3] >= cost[4] then 
  begin
    k[0] := 0;k[1] := 0;k[2] := 0;k[3] := 0;inc(k[4]); 
  end;
  
  for var i := 0 to 4 do WritelnFormat('{0} билет(ов)- {1} штук(а)', t[i], k[i]);
end.

Пример(1):
n-> 37
1 билет(ов)- 0 штук(а)
5 билет(ов)- 0 штук(а)
10 билет(ов)- 0 штук(а)
20 билет(ов)- 0 штук(а)
60 билет(ов)- 1 штук(а)

Пример(2):
n-> 35
1 билет(ов)- 0 штук(а)
5 билет(ов)- 1 штук(а)
10 билет(ов)- 1 штук(а)
20 билет(ов)- 1 штук(а)
60 билет(ов)- 0 штук(а)
0,0(0 оценок)
Ответ:
Ilyakuhs228
09.03.2020 19:31

Скорее всего большое приемущество обработки данных с электронных  таблиц  в том ,что при такой обработке  допущение ошибки минимально (  это уже зависит от человека ,где он неправильно ввёл данные ) . Если же обрабатывать таблицу вручную ,то верояность допущения ошибок велика!
Так же преимущество  в том ,что при обработке информации при таблицы  намного быстрее проходит этот процесс ,нежеле ты сама  будешь всё  проверять .
Ну и конечно же  люди сейчас настолько ленивы ,чтобы самостоятельно обрабатывать какую-либо информацию, поэтому мы всё доверяем исскуственному разуму:) 

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота