KotyaSuper11
20.10.2020 09:50

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

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

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

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

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

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

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

костяшки.

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

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

4 .4

1234

121

3 2

567

48

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
катя4003
26.01.2023 08:46

program aaa;

const n=50;

var w, c, x, d10, d4, d1: integer;  

begin 

  writeln ('введите вес бандероли');

  readln (w);

  if w < = n

    then c: =10

    else  

        if w mod n = 0

          then c: =10+((w div n)-1)*5

          else c: =10+5+((w div n)-1)*5;

 

  d10: = c div 10;

  d4: = (c-10*d10) div 4;

  d1: = (c-d10*10-d4*4);

 

  writeln ('стоимость бандероли: ',c,' драхм');

  writeln;

  writeln ('для оплаты нужно не менее');

  writeln (d10: 10,' монет по 10 драхм');

  writeln (d4: 10,' монет по 4 драхмы');

  writeln (d1: 10,' монет по 1 драхме');

end.

результат работы программы:

введите вес бандероли       100

стоимость бандероли: 15 драхм

для оплаты нужно не менее

          1 монет по 10 драхм

          1 монет по 4 драхмы

          1 монет по 1 драхме

0,0(0 оценок)
Ответ:
асланбек13
26.01.2023 08:46
На PascalABC.NET


program aaa;
const n=50;
var w, c, x, d10, d4, d1: integer; 
begin 
  writeln ('Введите вес бандероли');
  readln (w);
  if w <= n
    then c:=10
    else  
       if w mod n = 0
          then c:=10+((w div n)-1)*5
          else c:=10+5+((w div n)-1)*5;
 
  d10:= c div 10;
  d4:= (c-10*d10) div 4;
  d1:= (c-d10*10-d4*4);
 
  writeln ('стоимость бандероли: ',c,' драхм');
  writeln;
  writeln ('для оплаты нужно не менее');
  writeln (d10:10,' монет по 10 драхм');
  writeln (d4:10,' монет по 4 драхмы');
  writeln (d1:10,' монет по 1 драхме');
end.    


Результат работы программы:

Введите вес бандероли     100

стоимость бандероли: 15 драхм

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