Problem

1 /3


Encontrando o Mínimo Usando a Fila Prioritária

Theory Click to read/hide

Priority Queue é um tipo de contêiner, que permite alcançar uma velocidade de acesso constante ao máximo (ou mínimo) elemento (O(1)), aumentando a velocidade de inserção de elementos no contêiner para logarítmico (O(logn)).

Operadores Básicos:


início   -  Acessando o elemento superior 
 
tamanho  - Retorna o número de elementos no contêiner 

empurrar  - insere um elemento e classifica o contêiner subjacente 

pop  - remove o primeiro elemento 

Exemplo de obtenção do máximo:

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

principal()
{

priority_queue <int>p_fila;
int N,a;
scanf("%d",&N);

para(int i = 0;i<N;i++)
{
   
scanf("%d",&a);
p_queue.push(a);

  }
  cout<<p_queue.top();

}

Problem

Dada uma sequência de números. Encontre o menor número nele.
 
Entrada
O número N é dado primeiro (o número de números na sequência,  1<=N< ;=100000) e depois
N números.
 
Saída
Imprima o menor número.

Entrar Saída
7
4 2 5 -1 4 6 2
-1