Задача

1 /3


Поиск минимума с помощью приоритетной очереди

Теория Нажмите, чтобы прочитать/скрыть


Очередь с приоритетом - это тип контейнера, который позволяет достичь константной скорости доступа к максимальному (или минимальному) элементу (O(1)), за счет увеличения скорости вставки элементов в контейнер до логарифмической (O(logn)).

Основные операторы:


top   -  Доступ к верхнему элементу 
 
size  - Возвращает количество элементов в контейнере 

push  - вставляет элемент и сортирует базовый контейнер 

pop  - удаляет первый элемент 

Пример получения максимума:

 
 
#include <iostream>
#include <queue>
#include "stdio.h"
using namespace std;

main()
{
	
	priority_queue <int> p_queue;
	int N,a;
	scanf("%d",&N);
	
	for(int i = 0;i<N;i++)
	{
   
	scanf("%d",&a);
	p_queue.push(a);
	
  }
  cout<<p_queue.top();
	
}

Задача

Дана последовательность чисел. Найти в ней наименьшее число.
 
Входные данные
Задано сначала число N (количество чисел в последовательности, 1<=N<=100000), а затем
N чисел.
 
Выходные данные
Выведите наименьшее число.

Ввод Вывод
7
4 2 5 -1 4 6 2
-1
 

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w64105
Free Pascal1
Python1
Комментарий учителя