1) Глобус-модель, яка уособлює земну кулю, карту землі і нашої рідної планети. 2) Частота - показує певний момент, коли ту чи іншу дію покращився, збільшилося в кількості, розмірах і так далі. 3) зображення показує етапи виверження вулкана і властивості. 4) Модель корабля, що показує в мініатюрі, як би виглядав корабель. 5) 3д модель церкви - модель, що показує як би виглядала Церква. 6) креслення деталі - принцип той же: показати, як би виглядала деталь, також за до цього креслення можна виконати цю деталь. (я трохи не зрозумів завдання, якщо я зробив неправильно-напиши, перероблю.)
Const nn=100; { предельное количество номиналов банкнот } type bnk=longint; var nom,res:array[1..nn] of bnk; i,n,koln:integer; sum:bnk;
procedure Sort(n:integer); var i,j:integer; t:bnk; begin for i := 1 to n-1 do for j := 1 to n-i do if nom[j] > nom[j+1] then begin t := nom[j]; nom[j] := nom[j+1]; nom[j+1] := t end end;
begin Readln(n); for i:=1 to n do Read(nom[i]); Readln(sum); Sort(n); koln:=0; i:=n; while sum>0 do begin while nom[i]>sum do Dec(i); Inc(koln); res[koln]:=nom[i]; sum:=sum mod nom[i]; if (sum<nom[1]) and (sum<>0) then begin sum:=0; koln:=-1 end end; if koln=0 then koln:=-1; Writeln(koln); for i:=1 to koln do Write(res[i],' '); Writeln end.
1) Глобус-модель, яка уособлює земну кулю, карту землі і нашої рідної планети. 2) Частота - показує певний момент, коли ту чи іншу дію покращився, збільшилося в кількості, розмірах і так далі. 3) зображення показує етапи виверження вулкана і властивості. 4) Модель корабля, що показує в мініатюрі, як би виглядав корабель. 5) 3д модель церкви - модель, що показує як би виглядала Церква. 6) креслення деталі - принцип той же: показати, як би виглядала деталь, також за до цього креслення можна виконати цю деталь. (я трохи не зрозумів завдання, якщо я зробив неправильно-напиши, перероблю.)
Объяснение:
nn=100; { предельное количество номиналов банкнот }
type
bnk=longint;
var
nom,res:array[1..nn] of bnk;
i,n,koln:integer;
sum:bnk;
procedure Sort(n:integer);
var
i,j:integer;
t:bnk;
begin
for i := 1 to n-1 do
for j := 1 to n-i do
if nom[j] > nom[j+1] then
begin t := nom[j]; nom[j] := nom[j+1]; nom[j+1] := t end
end;
begin
Readln(n);
for i:=1 to n do Read(nom[i]);
Readln(sum);
Sort(n);
koln:=0; i:=n;
while sum>0 do begin
while nom[i]>sum do Dec(i);
Inc(koln); res[koln]:=nom[i];
sum:=sum mod nom[i];
if (sum<nom[1]) and (sum<>0) then begin sum:=0; koln:=-1 end
end;
if koln=0 then koln:=-1;
Writeln(koln);
for i:=1 to koln do Write(res[i],' ');
Writeln
end.
Тестовые решения
Контрольный пример:
5
1 3 7 12 32
40
3
32 7 1
Еще один пример:
8
1 5 10 50 100 500 1000 5000
4586
6
1000 500 50 10 5 1