【POJ 2442】 Sequence
2024-09-07 05:18:08
【题目链接】
http://poj.org/problem?id=2442
【算法】
堆
【代码】
#include <algorithm>
#include <bitset>
#include <cctype>
#include <cerrno>
#include <clocale>
#include <cmath>
#include <complex>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <limits>
#include <list>
#include <map>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <utility>
#include <vector>
#include <cwchar>
#include <cwctype>
#include <stack>
#include <limits.h>
using namespace std;
#define MAXM 110
#define MAXN 2010 int T,n,m,i,j;
int a[MAXM][MAXN],ans[MAXN]; struct info
{
int p,q,val;
bool last;
friend bool operator < (info a,info b)
{
return a.val > b.val;
}
} ; inline void _merge(int *a,int *b)
{
int i,j;
priority_queue< info > q;
static int res[MAXN];
info tmp;
while (!q.empty()) q.pop();
q.push((info){,,a[]+b[],false});
for (i = ; i <= n; i++)
{
tmp = q.top();
q.pop();
res[i] = tmp.val;
q.push((info){tmp.p,tmp.q+,a[tmp.p]+b[tmp.q+],true});
if (!tmp.last) q.push((info){tmp.p+,tmp.q,a[tmp.p+]+b[tmp.q],false});
}
for (i = ; i <= n; i++) a[i] = res[i];
} int main()
{ scanf("%d",&T);
while (T--)
{
scanf("%d%d",&m,&n);
for (i = ; i <= m; i++)
{
for (j = ; j <= n; j++) scanf("%d",&a[i][j]);
sort(a[i]+,a[i]+n+);
}
for (i = ; i <= n; i++) ans[i] = a[][i];
for (i = ; i <= m; i++) _merge(ans,a[i]);
for (i = ; i < n; i++) printf("%d ",ans[i]);
printf("%d\n",ans[n]);
} return ; }
最新文章
- Tcp/IP
- 用户 'IIS APPPOOL\ASP.NET V4.0' 登录失败 解决办法&hellip;&hellip;&hellip;&hellip;
- 实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目
- .Net加密保护工具分析介绍
- 初识VBS
- c++ 走向高级之日积月累
- ruby 笔记
- php编写简单的页面跳转功能
- Android 使用MediaStore.Images和 Cursor查询本地图片和图片缩略图
- 高仿优酷Android客户端图片左右滑动(自动切换)
- linux 学习-软件的安装
- 判断客户端使用的是安卓还是苹果,然后加载对应的css文件
- SVProgressHUD源码解读(2.0.3)
- Web Api 2.0中使用Swagger生成Api文档的2个小Tips
- 09_Python深拷贝、浅拷贝
- .htaccess 文件 访问二级域名 对应的 指定文件夹
- linux平均负载的理解及原因排查
- PLC STL any数据类型
- pandas基础用法——索引
- 使用Redis数据库(1)(三十三)
热门文章
- pengyue-form 模块 dropdown 关系联动
- servlet学习总结(一)——HttpServletRequest(转载)
- CAD动态绘制多段线(com接口)
- 【LeetCode】2、Add Two Numbers
- hbase + phoenix 单机版安装
- uva 133(The Dole Queue UVA - 133)
- CF36E Two Paths (欧拉回路+构造)
- [pytorch学习]1.pytorch ubuntu安装
- Linux日期时间
- MySql 日志查看与设置