博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ2442 优先队列
阅读量:4446 次
发布时间:2019-06-07

本文共 834 字,大约阅读时间需要 2 分钟。

优先队列不同于普通队列,它分为最大优先队列和最小优先队列,当你写成priority_queue<int >a时,它默认为最大优先队列

最大优先队列即,当它用  a.top()时   从队列中寻找最大的数值,当它用  a.pop()时   从队列中删除最大的数值,

#include <cstdio>

#include <cstring>
#include <cstdlib>
#include <iostream>
#include <vector>
#include <queue>
#include <algorithm>
using namespace std;

int main()

{
priority_queue<int> a;

int t;

scanf("%d",&t);
while(t--)
{

int i,j,k,x[3000],y[3000],m,n;
scanf("%d %d",&m,&n);
for(i=0;i<n;i++)
scanf("%d",&x[i]);
sort(x,x+n);

for(i=1;i<m;i++)

{
for(int g=0;g<n;g++)
scanf("%d",&y[g]);

 

for(k=0;k<n;k++)
a.push(x[k]+y[0]);

for(j=1;j<n;j++)

for(k=0;k<n;k++)
{
if(y[j]+x[k]>a.top())
break;

a.pop();

a.push(y[j]+x[k]);
}
for(k=0;k<n;k++)
{
x[k]=a.top();
a.pop();
}
sort(x,x+n);
}
for(i=0;i<n-1;i++)
cout << x[i] << " " ;
cout << x[n-1] << endl;
}
return 0;
}

转载于:https://www.cnblogs.com/woyaocheng/p/4867375.html

你可能感兴趣的文章
常用会计科目通俗解释
查看>>
给网卡配置10个临时ip地址,但是不配置192.168.17.15这个ip
查看>>
html滑动
查看>>
个人作品:EasyPicker(轻取)简洁而又实用的文件收取Web应用
查看>>
delphi中关于时间差的实例
查看>>
Android代码中动态设置图片的大小(自动缩放),位置
查看>>
secret of the javascript ninja笔记
查看>>
谈谈需求变更跟踪
查看>>
【POJ】2019 Cornfields
查看>>
.Net中直接操作内存
查看>>
jenkins发送测试报告邮件
查看>>
Redis 安全配置
查看>>
[轉]用 snprintf / asprintf 取代不安全的 sprintf
查看>>
android dialog转layout
查看>>
iOS面试题集
查看>>
[LeetCode169]Majority Element
查看>>
VS中ReportView的坑爹问题
查看>>
分享JS代码(转)
查看>>
基本CSS布局
查看>>
pyQuery的安装
查看>>