![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
pupil |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Продвинутые Сообщений: 6 Регистрация: 16.11.2008 Город: Казахстан ![]() |
Входной файл cool.in
Выходной файл cool.out Имеются минимальные суточные температуры за N дней (1<=N<=10000). Определить продолжительность периода в течении которого ежедневно были заморозки. Входные данные В первый строке записано число N - кол. дней. Во второй - минимальные суточные температуры, разделенные пробелами. Выходные данные Число - длинна наибольшего периода на протяжении которого были заморозки Пример Cool.in 10 4 -5 -4 -2 -10 0 1 -2 -1 1 Cool.out 4 |
![]() ![]() |
creer |
![]()
Сообщение
#2
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Проходим по массиву. В момент перехода с "+" на "-" начинаем считать количество элементов, при переходе с "-" на "+" сравниваем с предыдущим таким значением. Не забыть про края только. Ничего принципиально сложного (IMG:style_emoticons/default/smile.gif)
|
pupil |
![]() ![]()
Сообщение
#3
|
Новичок ![]() Группа: Продвинутые Сообщений: 6 Регистрация: 16.11.2008 Город: Казахстан ![]() |
написал для нахождения общего кол-ва отрицательных элементов, не работает, что не так?
как сделать чтобы находил не сумму всех, а только тех которые идут один за другим. вот код: Код Program zamorozki; Type day = 1..10000; var n: day; d: array [-10000..10000] of integer; x,i: integer; f,f1: text; begin assign(f,'cool.in'); reset(f); assign(f1,'cool.out'); rewrite(f1); read(f,n); for i:=1 to n do begin readln(f,d[i]); end; x:=0; for i:=1 to n do if d[i]<=0 then x:=x+1; writeln(f1,x); close(f); close(f1); end. |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 26.5.2025, 2:45 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru