На летних каникулах Вася с одноклассниками поехали отдыхать в Приэльбрусье.
В один погожий день они решили подняться на вершину Эльбруса. Для этого им нужно набрать H метров высоты. Физическая подготовка ребят оказалась далеко не на высоте, из-за чего после каждого подъема на T метров половина школьников возвращалась вниз в лагерь. Если группа не делилась на две равные части — один школьник мог как спуститься, так и остаться.
Зная, что в начале восхождения группа состояла из N человек, определите, какое наименьшее и наибольшее количество ребят смогло бы подняться на вершину Эльбруса.
Формат ввода
Заданы три натуральных числа H, T и N (1 ≤ H, T, N ≤ 10**9).
Формат вывода
Выведите два числа — наименьшее и наибольшее количество ребят.
Пример
Ввод Вывод
5 3 5
2 3
Ответы
Ответ дал:
3
Ответ:
Вот ваше решение, товарищи
Объяснение:
Приложения:
Nnnnnnjkk:
пожалуйста кто-нибудб
умоляю
пожалуйста
МНЕ ОЧЕНТ ОЧЕНЬ НУЖНО
пожалуйста
молю
в 13 строке оператор if использовали без then, чего в принципе быть не может...
возможно потерян begin для end;
вот вариант, правда не на всех тестах проходит. помогите найти "подводный камень" в решении:
program vvv2;
var h,t,n,k,i,p,max,min:int64;
begin
readln(h,t,n);
min:=n;
max:=n;
p:=(h div t);
i:=1;
while i<= p do begin
min:=min div 2;
k:=max mod 2;
if k=0 then max:=(max div 2) else max:=(max div 2)+1;
k:=0;
i:=i+1;
end;
writeln(min,' ', max);
end.
var h,t,n,k,i,p,max,min:int64;
begin
readln(h,t,n);
min:=n;
max:=n;
p:=(h div t);
i:=1;
while i<= p do begin
min:=min div 2;
k:=max mod 2;
if k=0 then max:=(max div 2) else max:=(max div 2)+1;
k:=0;
i:=i+1;
end;
writeln(min,' ', max);
end.
Вас заинтересует
1 год назад
2 года назад
3 года назад
3 года назад
8 лет назад