Problem

1 /3


Tìm hàng đợi tối thiểu bằng cách sử dụng ưu tiên

Theory Click to read/hide

Hàng đợi ưu tiên là một loại vùng chứa, cho phép bạn đạt được tốc độ truy cập ổn định ở mức tối đa (hoặc tối thiểu) phần tử (O(1)), bằng cách tăng tốc độ chèn phần tử vào vùng chứa thành logarit (O(logn)).

Toán tử cơ bản:


trên cùng   -  Truy cập phần tử 
trên cùng
 
kích thước  - Trả về số phần tử trong vùng chứa 

đẩy  - chèn một phần tử và sắp xếp vùng chứa bên dưới 

bật  - xóa phần tử đầu tiên 

Ví dụ về nhận tối đa:

 
 
#include <iostream>
#include <queue>
#include "stdio.h"
sử dụng không gian tên std;

chủ yếu()
{

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

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

  }
  cout<<p_queue.top();

}

Problem

Cho một dãy số. Tìm số nhỏ nhất trong đó.
 
Đầu vào
Số N được đưa ra trước (số lượng các số trong dãy,  1<=N< ;=100000) và sau đó
Số N.
 
Đầu ra
In ra số nhỏ nhất.

 
Nhập Đầu ra
7
4 2 5 -1 4 6 2
-1