Иван Васильевич
пришел на рынок и решил купить два арбуза: один для себя, а другой для тещи.
Понятно, что для себя нужно выбрать арбуз потяжелей, а для тещи полегче. Но вот
незадача: арбузов слишком много и он не знает, как же выбрать самый легкий и
самый тяжелый арбуз. Помогите ему!
Вход. В первой строке задано количество арбузов n (n
≤ 30000). Вторая строка содержит n
чисел, каждое из которых задает массу соответствующего арбуза. Все массы
арбузов натуральные и не превышают 30000.
Выход. Вывести два
числа: массу арбуза, который Иван Васильевич купит теще, и массу арбуза,
который он купит себе, или вывести сообщение "Ooops!" (без кавычек),
если кто-то останется без арбуза.
Пример
входа |
Пример
выхода |
5 5 1 6 5 9 |
1 9 |
циклы
Анализ алгоритма
В
последовательности из n чисел следует
найти наименьшее и наибольшее число. Что можно сделать при помощи одного цикла. Если количество арбузов
меньше 2, то следует вывести "Ooops!".
Реализация алгоритма
Если арбузов
меньше 2, то кому-то его не достанется. Иначе в переменных mn и mx считаем
наименьший и наибольший вес среди имеющихся арбузов.
scanf("%d",&n); mn = 1000000000; mx = 0;
if (n < 2) printf("Ooops!\n"); else
{
for(i = 0; i
< n; i++)
{
scanf("%d",&w);
if (w <
mn) mn = w;
if (w > mx) mx = w;
}
Выводим ответ.
printf("%d
%d\n",mn,mx);
}
Реализация с исключением
#include <stdio.h>
int i, n, mn, mx, value;
int main(void)
{
scanf("%d",&n); mn = 1000000000; mx = 0;
try
{
if (n < 2) throw "Ooops!";
for(i = 0; i < n; i++)
{
scanf("%d",&value);
if (value < mn) mn = value;
if (value > mx) mx = value;
}
printf("%d %d\n",mn,mx);
}
catch (const char* msg)
{
puts(msg);
}
return 0;
}
Java реализация
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
int mn =
1000000000, mx = 0, n = con.nextInt();
if (n <
2) System.out.println("Ooops!"); else
{
for(int i = 0; i < n; i++)
{
int w = con.nextInt();
if (w < mn) mn = w;
if (w > mx) mx = w;
}
System.out.println(mn + "
" + mx);
}
}
}
Java реализация –
математические функции
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
int min =
Integer.MAX_VALUE;
int max = 0;
int n = con.nextInt();
if (n <
2)
System.out.println("Ooops!");
else
{
for(int i = 0; i < n; i++)
{
int weight = con.nextInt();
min = Math.min(min,weight);
max = Math.max(max,weight);
}
System.out.println(min + "
" + max);
}
con.close();
}
}
Python реализация с сортировкой
n = int(input())
if n < 2 :
print('Ooops!')
else:
list = list(map(int,input().split()))
list.sort()
print(list[0],list[-1])
Python реализация с минимумом и
максимумом
n = int(input())
if n < 2 :
print('Ooops!')
else:
list = list(map(int,input().split()))
print(min(list),max(list))