Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 

Арбузы

(Время: 0,5 сек. Память: 16 Мб Сложность: 14%)

В этой задаче из представленных n чисел следует выбрать наибольшее и наименьшее число, а затем просто их вывести. Для поиска максимального элемента следует определить переменную max, в которую предварительно можно занести наименьшее возможное значение, 0 например (ведь все числа натуральные, т.е. больше нуля). Далее следует считывать в переменную x текущее значение и проверять: не больше ли оно ранее найденного, которое как раз храниться в max. Если да, то будем записывать его в max. Таким образом, по окончании процесса мы получим в max наибольшее значение. Поиск минимального элемента происходит аналогично. Заметим, что в этой задаче можно обойтись без использования массивов.

Рассмотрим алгоритм решения этой задачи:

read(n);
max=0; min=32000;
for i=1..n{
  read(x);
  if(x > max) max=x;
  if(x < min) min=x;
}
write(min,' ',max);

На самом деле в этой задаче может возникнуть непонятный момент: что делать, когда арбуз всего один? Кому его нужно купить: себе или теще? Если рассуждать разумно (по жизни), то конечно лучше купить его себе, а теща обойдется и без арбуза. Но если следовать условиям задачи получается, что этот арбуз будет адресован как Ивану Васильевичу, так и его теще и в данном случае нужно выводить два одинаковых числа в качестве ответа.


[Обсуждение] [Все попытки] [Задача]


Красноярский краевой Дворец пионеров, (c)2006 - 2017, ICQ: 151483