На вход программы поступает последовательность из N натуральных чисел. Нужно выбрать из них произвольное количество чисел так, чтобы их сумма была максимальной и не делилась на 4. В результате программа должна вывести количество выбранных чисел и их сумму. Если получить требуемую сумму невозможно, в качестве ответа нужно выдать 0.
Входные данные:
На вход программе подаётся натуральное число N (N 1000), а затем N натуральных чисел, каждое из которых не превышает 10000.
Пример входных данных:
3
1
2
1
Выходные данные:
Программа должна вывести два числа: сначала количество выбранных чисел, а затем их сумму.
Пример выходных данных для приведённого примера входных данных:
2 3
паскаль
Answers & Comments
a, n, i, sum, c, min: integer;
begin
sum := 0;
c := 0;
min := 10001;
read(n);
for i := 1 to n dobegin
read(a);
sum := sum + a;
c := c + 1;
if(a < min) and (a mod 4 <> 0) then min := a;
end;
if(sum mod 4 = 0) and (min <> 10001) then begin sum := sum - min; c := c - 1; end;
if(sum mod 4 = 0) then begin write(0); exit; end;
writeln(c, ' ', sum);
end.