Problem

1 /3


پیدا کردن حداقل با استفاده از صف اولویت

Theory Click to read/hide

صف اولویت یک نوع ظرف است, که به شما امکان می دهد به سرعت دسترسی ثابت به حداکثر (یا حداقل) عنصر (O(1))، با افزایش سرعت درج عناصر در ظرف به لگاریتمی (O(logn)).

اپراتورهای پایه:


بالا   -  دسترسی به عنصر 
بالا
 
اندازه  - تعداد عناصر موجود در ظرف را برمی‌گرداند 

فشار  - یک عنصر را وارد می کند و ظرف زیرین را مرتب می کند 

پاپ  - اولین عنصر 
را حذف می کند

مثالی برای گرفتن حداکثر:

 
 
ایجاد شد
#include <iostream>
#include <queue>
#include "stdio.h"
استفاده از namespace std;

main()
{

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

برای(int و = 0;i<N;i++)
{
   
scanf("%d",&a);
p_queue.push(a);

  }
  cout<<p_queue.top();

}

Problem

با توجه به دنباله ای از اعداد. کوچکترین عدد را در آن پیدا کنید.
 
ورودی
ابتدا عدد N داده می شود (تعداد اعداد در دنباله،  1<=N< ;=100000) و سپس
N عدد.
 
خروجی
کوچکترین عدد را چاپ کنید.

<بدن>
وارد کنید خروجی
7
4 2 5 -1 4 6 2
-1