Задана последовательность целых чисел - C (СИ)
Формулировка задачи:
Всем привет!
Решаю задачи с acmp,наткнулся на эту.
Вроде ничего сложного,однако на 3 тесте она не проходит.
С первыми двумя все нормально.
В чем ошибка я не понимаю напрочь,подскажите,если не трудно..
Вот условие
Задана последовательность целых чисел. Числа нумеруются по порядку следования, начиная с единицы.
Требуется написать программу, которая найдет сумму максимума из чисел с четными номерами и минимума из чисел с нечетными номерами – max{a2, a4, …}+min{a1, a3, …}.
Входные данные
Входной текстовый файл INPUT.TXT содержит в единственной строке последовательность от 2 до 2*105 целых чисел, которые по модулю не превышают 10000.
Выходные данные
Выходной текстовый файл OUTPUT.TXT должен содержать одно целое число - сумму максимума из чисел с четными номерами и минимума из чисел с нечетными номерами.
Примеры
№ INPUT.TXT OUTPUT.TXT
1 1 2 3
2 1 -2 3 -4 5 -1
Вот мой код.
Сначала читаем первые два числа,а потом пока не конец файла идет чтение,с проверкой на четность/нечетность номера числа.
Заранее спасибо!
#include<stdio.h>
int main(void)
{
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
int max,min,a,i;
i = 3;
scanf("%d",&min);
scanf("%d",&max);
while(!feof)
{
scanf("%d",&a);
if(i%2)
if(a < min)
min = a;
else
if(a > max)
max = a;
i++;
}
printf("%d",min + max);
}Решение задачи: «Задана последовательность целых чисел»
textual
Листинг программы
while(!feof(stdin))
Объяснение кода листинга программы
- В коде используется цикл while, который выполняет следующий блок кода до тех пор, пока условие не станет ложным.
- Условие цикла проверяет, достигли ли мы конца файла (feof), используя ввод из стандартного ввода (stdin).
- Если условие ложно, то выполняется следующий блок кода.
- В этом блоке кода происходит чтение одного целого числа из стандартного ввода (stdin) с помощью функции scanf.
- После чтения числа, scanf возвращает количество успешно прочитанных переменных. Если все переменные успешно прочитаны, то возвращается 1.
- Чтение числа продолжается до тех пор, пока не будет прочитано число или не произойдет ошибка ввода.
- Если условие цикла становится ложным, то происходит выход из цикла и выполнение программы продолжается после цикла.