• На вход программы поступает последовательность из N натуральных чисел. Нужно выбрать из них произвольное количество чисел так, чтобы их сумма была максимальной и не делилась на 4. В результате программа должна вывести количество выбранных чисел и их сумму. Если получить требуемую сумму невозможно, в качестве ответа нужно выдать 0.
    Входные данные:
    На вход программе подаётся натуральное число N (N  1000), а затем N натуральных чисел, каждое из которых не превышает 10000.
    Пример входных данных:
    3
    1
    2
    1
    Выходные данные:
    Программа должна вывести два числа: сначала количество выбранных чисел, а затем их сумму.
    Пример выходных данных для приведённого примера входных данных:
    2 3
    паскаль

Ответы 1

  • var   a, n, i, sum, c, min: integer;  begin   sum := 0;   c := 0;   min := 10001;   read(n);   for i := 1 to n do begin     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.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years