Знезаражувач реп’яховiруса
Обмеження: 2 сек., 256 МiБ
Для ефективної боротьби з реп’яховiрусом вченi придумали спецiальний пристрiй-знезаражувач.Для своєї роботи цей пристрiй використовує спецiальнi ампули iз активною речовиною. Всьогодоступноnампул. Ефективнiсть i-ї з них рiвна Ai умовних одиниць.Для найбiльш ефективної роботи знезаражувача, його необхiдно зарядити рiвноkампулами,при чому їх сумарна ефективнiсть повинна бути непарним числом. Ваше завдання визначити,якими саме ампулами необхiдно зарядити знезаражувач для його найбiльш ефективної роботи,або визначити що це не можливо.Вхiднi данiУ першому рядку задано два натуральних числаnтаk кiлькiсть доступних ампул такiлькiсть ампул котрими необхiдно зарядити знезаражувач. У наступному рядку заданоnнату-ральних чиселai ефективностi ампул.Вихiднi данiУ першому випадку виведiть рядокyesякщо знезаражувач можна зарядити для максималь-ної ефективностi, абоno, якщо цього досягнути не можливо.У випадку ствердної вiдповiдi в наступному рядку виведiтьkчисел через пробiл ефектив-ностi ампул, котрими треба зарядити знезаражувач для його максимальної ефективностi. Якщо iснує декiлька правильних вiдповiдей, дозволено вивести будь-яку з них.
Обмеження1≤k≤n≤105,1≤ai≤109.
Приклади
Вхiднi данi (stdin) 3 2
1 2 3
Вихiднi данi (stdout) yes 2 3
//Если программа не запускается, то обновите версию
uses System.Linq;
begin
writeln('III');
var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList;
writeln;
while a.Any() do
begin
write(a[0], ' ');
a.RemoveAt(0);
if not a.Any then break;
write(a.Last, ' ');
a.RemoveAt(a.Count - 1);
if not a.Any then break;
var n := 0;
if a.Count > 1 then n := a.Count div 2 - 1;
write(a[n], ' ');
a.RemoveAt(n);
end;
end.
mas_in, mas_out : array [1..100,1..100] of integer;
n,m,i,j:integer;
begin
write('Введите количество строк n='); readln(n);
write('Введите количество столбцов m='); readln(m);
for i:=1 to n do
for j:=1 to m do
mas_in[i,j]:=random(99);
//mas_in[i,j]:=i*(j+i);
writeln('Исходная матрица');
for i:=1 to n do
begin
for j:=1 to m do
write(mas_in[i,j]:2,' ');
writeln;
end;
for i:=1 to n do
begin
for j:=1 to m do
mas_out[i,j]:=mas_in[i,m-j+1];
end;
writeln('Конечная матрица');
for i:=1 to n do
begin
for j:=1 to m do
write(mas_out[i,j]:2,' ');
writeln;
end;
end.