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

Fоплата сегодня али в местном магазине сделал покупку за c тенге. он только хотел расплатится и услышал от продавца фразу "без сдачи , молодой человек". у него есть всего n монет достоинств a1, a2, an тенге. определите, сможет ли он расплатится без сдачи. формат входных данных в первой строке входного файла записаны два целых числа c (1 ≤ c ≤ 1000) и n (1 ≤ n ≤ 15) — общая сумма покупки и количство монет у али соответсвенно. во второй строке записаны n целых чисел a1, a2, an (1 ≤ ai ≤ 1000)— достоинства монет али. формат выходных данных в единственной строке выведите слово «yes», если али сможет расплатится без сдачи. иначе, выведите «no»

Показать ответ
Ответ:
Slee1
Slee1
26.06.2020 19:22
Program esep;
var input,output:text;
n,i,j,g,nm,ans,t:integer;
ara:array[0..1000]  of integer;
ar,arq:array[0..1000] of integer;
ts,sum,a:integer;
begin assign(input,'f.in');
reset(input);  
assign(output,'f.out');
rewrite(output);
readln(input,a,n);
ans:=10000;
  for i:=1 to n do begin read (input,ar[i]);ts:=ts+2*ar[i];
end;    
if ts<a then writeln(output,'no') else  
begin
ara[1]:=3;
for i:=2 to 15 do
begin
ara[i]:=3*ara[i-1];
end;
 for i:=1 to ara[n] do
begin
if arq[n]<2 then
begin  
inc(arq[n]);
sum:=sum+ar[n];
inc(nm);  
end  else   begin   
g:=n;while arq[g]>1 do
 begin sum:=sum-ar[g]*arq[g];
dec(nm,arq[g]);arq[g]:=0;
dec(g);
end;
 inc(arq[g]);
sum:=sum+ar[g];
inc(nm);
end;
if sum=a then begin
 if nm<ans then ans:=nm;
end;
end;
 if ans>1000 then writeln(output,'yes') else
 writeln(output, ans); 
  end;
close(output);
close(input);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота