В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
ЗаНоЗа169
ЗаНоЗа169
17.03.2023 16:29 •  Информатика

РЕШИТЕ Ограничение по времени 1 секунда
Ограничение памяти 256 МБ
Стандартный ввод input или input.txt
Вывод стандартный вывод или output.txt
Вы пытаетесь собрать шкаф, но потеряли инструкции. В шкафу есть несколько отверстий, каждое из которых предназначено для установки болта определенного размера. Отверстие размера D необходимо совместить с болтом размера D. Однако подойдут и болты размеров D-1 и D + 1. Поскольку у вас нет инструкций, вы решаете сделать следующее: для каждого болта вы случайным образом выберете доступное отверстие, в которое поместится болт, и ввинтите болт в это отверстие. Если болт не может войти ни в одно из доступных отверстий, вы пропустите его и перейдете к следующему.

Вам даны n целых чисел, содержащих размеры болтов. Для каждого элемента в болтах имеется соответствующее отверстие того же размера. Выведите максимальное количество неиспользуемых отверстий, которое может остаться в конце этого процесса.

Формат ввода
Первая строка содержит одно целое число 1
п
50 - количество болтов.

Вторая строка содержит n целых чисел, разделенных пробелом, размеров болтов, каждый от 1 до 100.

Формат вывода
Выведите максимальное количество неиспользуемых отверстий, которое может остаться в конце этого процесса.

Образец 1
Ввод, вывод
3
1 2 3
1
Образец 2
Ввод, вывод
5
1 2 3 2 4
1

Показать ответ
Ответ:
dimakovelko
dimakovelko
29.12.2022 01:46
Var
  a, b, c, min, max, mid: integer;
  f1, f2: Text;

begin
  Assign(f1, 'date.in');
  Reset(f1);
  Read(f1, a, b, c);
  Close(f1);
  if a > b then begin
    max := a; min := b
  end
  else begin
    max := b; min := a
  end;
  if max > c then begin
    if min < c then mid := c
    else begin
      mid := min; min := c
    end
  end
  else begin
    mid := max; max := c
  end;
  writeln('Меньшее=', min, ' среднее=', mid, ' большее=', max);
  Assign(f2, 'date.out');
  Rewrite(f2);
  Write(f2, min, ' ', mid, ' ', max);
  Close(f2)
end.
0,0(0 оценок)
Ответ:
PoLiNa20061404
PoLiNa20061404
27.04.2023 20:41
Var
  n,p: Longint;
  i,k,x,sum,min,max,max2,kr3: Integer; 
Begin 
readln(n);
p:=n;
while p>0 do  //находим число цифр в числе
  begin
  p:=p div 10;
  k:=k+1;
  end;
p:=n;
min:=9;
for i:=1 to k do
  begin
  x:=p mod 10;
  if x mod 2=0 then
     begin
     sum:=sum+x;
     if x>max2 then max2:=x;
     end;
  if x<min then min:=x;
  if x>max then max:=x;
  if (x mod 3=0) and (x>0) then kr3:=kr3+1;
  p:=p div 10;
  end;  
writeln('Сумма четных цифр: ',sum);
writeln('Минимальная цифра: ',min);
writeln('Количество кратных трем: ',kr3);
writeln('Разность максимальной и минимальной: ',max-min);
writeln('Максимальная четная цифра: ',max2);
end.

p - вс переменная. В нее заносим значение n
i - счетчик цикла
k - количество цифр в числе
x - текущая цифра числа
sum - сумма четных
min - минимальная цифра
max - максимальная цифра
max2 - максимальная четная цифра
kr3 - количество цифр, кратных 3:
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота