#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<set>
using namespace std;
int a[15]={1, 3, -1, -3, 5, 3, 6, 7};
struct cmp1// 1个数
{
bool operator () (const int a1,const int a2)
{
if(a[a1]==a[a2]) return a1<a2;
return a[a1]>a[a2];
}
};
struct node //两个数
{
int x,id;
friend bool operator <(node n1,node n2)
{
return n2.x<n1.x;
}
};
int main()
{
int n,m,k1,k2,i;
multiset<int,cmp1>s;
multiset<int>::iterator it;
for(int i=0;i<=7;i++)
s.insert(i);
while(!s.empty())
{
it=s.begin();
printf("%d ",*it);
s.erase(it);
}
printf("\n");
multiset<node>s2;
multiset<node>::iterator it2;
优先队列 priority_queue <int ,vector<int>,cmp1> Q1;
multiset<int>s3;
multiset<int>::iterator it3;
for(int i=0;i<=7;i++)
s3.insert(a[i]);
it3=s3.lower_bound(3);
printf("%d\n",*it3);
it3=s3.lower_bound(4);
printf("%d\n",*it3);
set容器 优先队列
最新推荐文章于 2023-02-28 20:18:43 发布