#include <stdio.h>
void input (int *buffer, int *length);
void output (int *buffer, int length);
int sum_numbers(int *buffer, int length);
int find_numbers(int* buffer, int length, int number, int* numbers);
int main() {
int length;
int buffer[10]; // Максимальный размер входного массива
int sum;
int new_buffer[10]; // Массив для элементов, на которые делится сумма
int count;
input(buffer, &length);
sum = sum_numbers(buffer, length); // Рассчитываем сумму четных элементов
// Если сумма равна 0 или нет четных, выводим "n/a"
if (sum == 0) {
return 1;
}
count = find_numbers(buffer, length, sum, new_buffer); // Ищем элементы на которые делится сумма
// Если нет элементов, выводим "n/a"
if (count == 0) {
return 1;
}
output(new_buffer, count); // Выводим отобранные элементы
return 0;
}
// Функция должна находить сумму четных элементов с 0-й позиции.
int sum_numbers(int *buffer, int length) {
int sum = 0;
for (int i = 0; i < length; i++) { // Исправлено начальное условие на 0
if (buffer[i] % 2 == 0) { // Проверяем на четность
sum += buffer[i];
}
}
return sum;
}
// Функция должна находить все элементы, на которые нацело делится переданное число и записывает их в выходной массив.
int find_numbers(int* buffer, int length, int number, int* numbers) {
int count = 0;
for (int i = 0; i < length; i++) {
if (buffer[i] != 0 && number % buffer[i] == 0) { // Проверяем на делимость
numbers[count] = buffer[i]; // Записываем подходящее число
count++;
}
}
return count; // Возвращаем количество найденных элементов
}
// Функция получает массив данных через stdin.
void input(int *buffer, int *length) {
for (int i = 0; i < *length; i++) {
}
}
// Функция выводит элементы массива в stdout.
void output(int *buffer, int length) {
for (int i = 0; i < length; i++) {
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGlucHV0IChpbnQgKmJ1ZmZlciwgaW50ICpsZW5ndGgpOwp2b2lkIG91dHB1dCAoaW50ICpidWZmZXIsIGludCBsZW5ndGgpOwppbnQgc3VtX251bWJlcnMoaW50ICpidWZmZXIsIGludCBsZW5ndGgpOwppbnQgZmluZF9udW1iZXJzKGludCogYnVmZmVyLCBpbnQgbGVuZ3RoLCBpbnQgbnVtYmVyLCBpbnQqIG51bWJlcnMpOwoKaW50IG1haW4oKSB7CiAgICBpbnQgbGVuZ3RoOwogICAgaW50IGJ1ZmZlclsxMF07IC8vINCc0LDQutGB0LjQvNCw0LvRjNC90YvQuSDRgNCw0LfQvNC10YAg0LLRhdC+0LTQvdC+0LPQviDQvNCw0YHRgdC40LLQsAogICAgaW50IHN1bTsKICAgIGludCBuZXdfYnVmZmVyWzEwXTsgLy8g0JzQsNGB0YHQuNCyINC00LvRjyDRjdC70LXQvNC10L3RgtC+0LIsINC90LAg0LrQvtGC0L7RgNGL0LUg0LTQtdC70LjRgtGB0Y8g0YHRg9C80LzQsAogICAgaW50IGNvdW50OwoKICAgIGlucHV0KGJ1ZmZlciwgJmxlbmd0aCk7CiAgICAKICAgIHN1bSA9IHN1bV9udW1iZXJzKGJ1ZmZlciwgbGVuZ3RoKTsgLy8g0KDQsNGB0YHRh9C40YLRi9Cy0LDQtdC8INGB0YPQvNC80YMg0YfQtdGC0L3Ri9GFINGN0LvQtdC80LXQvdGC0L7QsgogICAgCiAgICAvLyDQldGB0LvQuCDRgdGD0LzQvNCwINGA0LDQstC90LAgMCDQuNC70Lgg0L3QtdGCINGH0LXRgtC90YvRhSwg0LLRi9Cy0L7QtNC40LwgIm4vYSIKICAgIGlmIChzdW0gPT0gMCkgewogICAgICAgIHByaW50Zigibi9hXG4iKTsKICAgICAgICByZXR1cm4gMTsKICAgIH0KCiAgICBjb3VudCA9IGZpbmRfbnVtYmVycyhidWZmZXIsIGxlbmd0aCwgc3VtLCBuZXdfYnVmZmVyKTsgLy8g0JjRidC10Lwg0Y3Qu9C10LzQtdC90YLRiyDQvdCwINC60L7RgtC+0YDRi9C1INC00LXQu9C40YLRgdGPINGB0YPQvNC80LAKCiAgICAvLyDQldGB0LvQuCDQvdC10YIg0Y3Qu9C10LzQtdC90YLQvtCyLCDQstGL0LLQvtC00LjQvCAibi9hIgogICAgaWYgKGNvdW50ID09IDApIHsKICAgICAgICBwcmludGYoIm4vYVxuIik7CiAgICAgICAgcmV0dXJuIDE7CiAgICB9CgogICAgb3V0cHV0KG5ld19idWZmZXIsIGNvdW50KTsgLy8g0JLRi9Cy0L7QtNC40Lwg0L7RgtC+0LHRgNCw0L3QvdGL0LUg0Y3Qu9C10LzQtdC90YLRiwogICAgcmV0dXJuIDA7Cn0KCi8vINCk0YPQvdC60YbQuNGPINC00L7Qu9C20L3QsCDQvdCw0YXQvtC00LjRgtGMINGB0YPQvNC80YMg0YfQtdGC0L3Ri9GFINGN0LvQtdC80LXQvdGC0L7QsiDRgSAwLdC5INC/0L7Qt9C40YbQuNC4LgppbnQgc3VtX251bWJlcnMoaW50ICpidWZmZXIsIGludCBsZW5ndGgpIHsKICAgIGludCBzdW0gPSAwOwoKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsgLy8g0JjRgdC/0YDQsNCy0LvQtdC90L4g0L3QsNGH0LDQu9GM0L3QvtC1INGD0YHQu9C+0LLQuNC1INC90LAgMAogICAgICAgIGlmIChidWZmZXJbaV0gJSAyID09IDApIHsgLy8g0J/RgNC+0LLQtdGA0Y/QtdC8INC90LAg0YfQtdGC0L3QvtGB0YLRjAogICAgICAgICAgICBzdW0gKz0gYnVmZmVyW2ldOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gc3VtOwp9CgovLyDQpNGD0L3QutGG0LjRjyDQtNC+0LvQttC90LAg0L3QsNGF0L7QtNC40YLRjCDQstGB0LUg0Y3Qu9C10LzQtdC90YLRiywg0L3QsCDQutC+0YLQvtGA0YvQtSDQvdCw0YbQtdC70L4g0LTQtdC70LjRgtGB0Y8g0L/QtdGA0LXQtNCw0L3QvdC+0LUg0YfQuNGB0LvQviDQuCDQt9Cw0L/QuNGB0YvQstCw0LXRgiDQuNGFINCyINCy0YvRhdC+0LTQvdC+0Lkg0LzQsNGB0YHQuNCyLgppbnQgZmluZF9udW1iZXJzKGludCogYnVmZmVyLCBpbnQgbGVuZ3RoLCBpbnQgbnVtYmVyLCBpbnQqIG51bWJlcnMpIHsKICAgIGludCBjb3VudCA9IDA7CgogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgIGlmIChidWZmZXJbaV0gIT0gMCAmJiBudW1iZXIgJSBidWZmZXJbaV0gPT0gMCkgeyAvLyDQn9GA0L7QstC10YDRj9C10Lwg0L3QsCDQtNC10LvQuNC80L7RgdGC0YwKICAgICAgICAgICAgbnVtYmVyc1tjb3VudF0gPSBidWZmZXJbaV07IC8vINCX0LDQv9C40YHRi9Cy0LDQtdC8INC/0L7QtNGF0L7QtNGP0YnQtdC1INGH0LjRgdC70L4KICAgICAgICAgICAgY291bnQrKzsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIGNvdW50OyAvLyDQktC+0LfQstGA0LDRidCw0LXQvCDQutC+0LvQuNGH0LXRgdGC0LLQviDQvdCw0LnQtNC10L3QvdGL0YUg0Y3Qu9C10LzQtdC90YLQvtCyCn0KCi8vINCk0YPQvdC60YbQuNGPINC/0L7Qu9GD0YfQsNC10YIg0LzQsNGB0YHQuNCyINC00LDQvdC90YvRhSDRh9C10YDQtdC3IHN0ZGluLgp2b2lkIGlucHV0KGludCAqYnVmZmVyLCBpbnQgKmxlbmd0aCkgewogICAgc2NhbmYoIiVkIiwgbGVuZ3RoKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgKmxlbmd0aDsgaSsrKSB7CiAgICAgICAgc2NhbmYoIiVkIiwgJmJ1ZmZlcltpXSk7CiAgICB9Cn0KCi8vINCk0YPQvdC60YbQuNGPINCy0YvQstC+0LTQuNGCINGN0LvQtdC80LXQvdGC0Ysg0LzQsNGB0YHQuNCy0LAg0LIgc3Rkb3V0Lgp2b2lkIG91dHB1dChpbnQgKmJ1ZmZlciwgaW50IGxlbmd0aCkgewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgICAgIHByaW50ZigiJWQgIiwgYnVmZmVyW2ldKTsKICAgIH0KICAgIHByaW50ZigiXG4iKTsKfQ==