М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
blablabla43
blablabla43
12.08.2020 16:37 •  Информатика

В городе Ж. ещё не очень распространены банковские карты, поэтому в автобусах обычно рассчитываются наличными. Пассажиры норовят заплатить за проезд крупными купюрами, поэтому каждому из них нужно дать ровно N рублей сдачи. Выходя на рейс, кондуктор обнаружил, что у него осталось ровно A рублёвых монет и ровно B двухрублёвых монет. Определите, какому наибольшему числу пассажиров он сможет выдать N рублей сдачи, используя эти монеты.

Входные данные
Первая строка входных данных содержит целое положительное число N — величину сдачи. Вторая строка входных данных содержит целое неотрицательное число A — количество имеющихся монет в один рубль. Третья строка содержит целое неотрицательное число B — количество монет в два рубля.

Чиcло N, а также общая сумма монет у кондуктора, не превосходят 2×109 рублей.

Выходные данные
Программа должна вывести единственное целое число — максимальное число пассажиров, которым можно выдать сдачу.

Система оценки
Решения, правильно работающие, когда входные числа не превосходят 100, будут оцениваться в

Пример
Ввод

Вывод

Пояснение

5
9
7

4

Каждому пассажиру нужно выдать 5 рублей сдачи. У кондуктора есть 9 рублёвых монет и 7 двухрублёвых монет. Он может выдать трём пассажирам сдачу в виде 5=2+2+1 и ещё одному пассажиру сдачу в виде 5=2+1+1+1. У кондуктора останется три рублёвые монеты, их не хватит на сдачу.

👇
Ответ:
greatdannil
greatdannil
12.08.2020

ответ (Python):

n = int(input())

a = int(input())

b = int(input())

left = 0

right = (a + 2 * b) // n + 2

while right - left > 1:

   mid = (left + right) // 2

   count2 = n // 2 * mid

   count1 = n % 2 * mid

   if a > count1:

       count2 -= (a - count1) // 2

   if count1 <= a and count2 <= b:

       left = mid

   else:

       right = mid

print(left)

4,6(90 оценок)
Открыть все ответы
Ответ:
Софияcatwar
Софияcatwar
12.08.2020

Логистинг задачи:

var i,n,max,d:LongInt;

x1,x2:Real;

begin

 max:=1;

 Read(n);

 for i:=1 to n div 2 do

  begin

   d:=sqr(2*i-1)+8*n;

   if d<0 then Continue;

   x1:=((1-2*i)-sqrt(d))/2;

   x2:=((1-2*i)+sqrt(d))/2;

   

   if (frac(x1)=0) and (x1>max) then

    begin

     max:=Round(x1);

     Break;

    end;

   if (frac(x2)=0) and (x2>max) then

    begin

     max:=Round(x2);

     Break;

    end;

  end;

 Writeln(max);

end.

Листинг программы:

var n, s: longint;

begin

 readln(s);

 s := 2 * s; {лучше s := s shl 1;}

 n := trunc(sqrt(s)); {можно, как планировалось, n := trunc(sqrt(s + 0.25) - 0.5);}

 while n > 1 do

   if (s mod n = 0) and odd(s div n - n)

     then break

     else dec(n);

 writeln(n)

end.

4,7(22 оценок)
Ответ:
Людина5
Людина5
12.08.2020

Объяснение:1) Определить число логических переменных.

  2) Определить количество базовых логических операций и их порядок.

  3) Изобразить для каждой логической операции соответствующий ей вентиль.

  4) Соединить вентили в порядке выполнения логических операций.

 

Пример 10

Составить логическую схему для логического выражения: F=¬XvY&X.

1)   Две переменные – X и Y.

2)   Две логические операции:      1 3  2        

                                                    ¬XvY&X.

3)   Строим схему, соединяя вентили в порядке выполнения логических операций:

 

  Пример 11

Постройте логическую схему, соответствующую логическому выражению F=X&Yv¬(YvX).

Вычислить значения выражения для X=1, Y=0.

1)   Переменных две: X и Y.

2)   Логических операций четыре: конъюнкция, две дизъюнкции и отрицание. Определяем порядок выполнения операций:

      1  4  3   2

    X&Yv ¬(YvX).

3)   Схему строим слева направо в соответствии с порядком выполнения логических операций:

 

 

4)   Вычислим значение выражения: F=1&0v¬(0v1)=0.

4,5(1 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ