Sequence(优先队列)
http://poj.org/problem?id=2442
题意:给你n*m的矩阵,然后每行取一个元素,组成一个包含n个元素的序列,一共有n^m种序列,
让你求出序列和最小的前n个序列的序列和。
#include <stdio.h>
#include <string.h>
#include <vector>
#include <queue>
#include <algorithm>
using namespace std;
const int N=; int main()
{
int T,m,n,arr1[N],arr2[N];
priority_queue<int,vector<int>,less<int> >q;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&m,&n);
for (int i = ; i < n; i ++)
{
scanf("%d",&arr1[i]);
}
sort(arr1,arr1+n);
for (int i = ; i < m; i ++)
{
for (int j = ; j < n; j ++)
{
scanf("%d",&arr2[j]);
q.push(arr1[]+arr2[j]);
}
sort(arr2,arr2+n);
for (int k = ; k < n; k ++)
{
for (int p = ; p < n; p ++)
{
if (arr1[k]+arr2[p] > q.top())
break;
q.pop();
q.push(arr1[k]+arr2[p]);
}
}
for (int k = ; k < n; k ++)
{
arr1[n--k] = q.top();
q.pop();
}
}
for (int i = ; i < n; i ++)
{
if (i==n-)
printf("%d\n",arr1[i]);
else
printf("%d ",arr1[i]);
}
}
return ;
}
Sequence(优先队列)的更多相关文章
- Codeforces Beta Round #3 D. Least Cost Bracket Sequence 优先队列
D. Least Cost Bracket Sequence 题目连接: http://www.codeforces.com/contest/3/problem/D Description This ...
- POJ 2442 Sequence 优先队列
题目: http://poj.org/problem?id=2442 #include <stdio.h> #include <string.h> #include <q ...
- POJ 2442 - Sequence - [小顶堆][优先队列]
题目链接:http://poj.org/problem?id=2442 Time Limit: 6000MS Memory Limit: 65536K Description Given m sequ ...
- HDU 6047 17多校 Maximum Sequence(优先队列)
Problem Description Steph is extremely obsessed with “sequence problems” that are usually seen on ma ...
- HDU 4441 Queue Sequence(优先队列+Treap树)(2012 Asia Tianjin Regional Contest)
Problem Description There's a queue obeying the first in first out rule. Each time you can either pu ...
- URAL 1306 Sequence Median(优先队列)
题意:求一串数字里的中位数.内存为1M.每个数范围是0到2的31次方-1. 思路:很容易想到把数字全部读入,然后排序,但是会超内存.用计数排序但是数又太大.由于我们只需要第n/2.n/2+1大(n为偶 ...
- Sequence《优先队列》
Description Given m sequences, each contains n non-negative integer. Now we may select one number fr ...
- CodeForces 3 D.Least Cost Bracket Sequence【贪心+优先队列】
Description 给出一个括号序列,中间有一些问号,将第i个问号换成左括号代价是a[i],换成右括号代价是b[i],问如果用最少的代价将这个括号序列变成一个合法的括号序列 Input 第一行一个 ...
- poj 2442 Sequence(优先队列)
题目:http://poj.org/problem?id=2442 题意:给你n*m的矩阵,然后每行取一个元素,组成一个包含n个元素的序列,一共有n^m种序列, 让你求出序列和最小的前n个序列的序列和 ...
随机推荐
- 行动起来:转换传统桌面应用程序到UWP 并发布到Windows 应用商店!
一个月前微软发布了桌面应用程序转换器(Desktop Application Converter),让我们可以把现有的桌面应用程序(.NET 4.6.1 或 Win32)轻松转换成 通用 Window ...
- THREE.DecalGeometry(转载)
function getDecalGeometry(position, direction){ var decalGeometry = new THREE.DecalGeometry( earthMe ...
- ubuntu14.04禁用USB外存储设备
ubuntu 14.04中禁用usb外存储设备: 在网上找了很多方法,大概都是下面的命令,而实际测试的时候没有什么作用. gsettings set org.gnome.desktop.media-h ...
- 本地读取服务器Xml文件及本地读本地的xml
updateUrl="ServerUrl"(服务器路径) WebClient wc = new WebClient(); Stream stream = wc.OpenRead(u ...
- select 多选 和单选,分组
<select name="group"> <option value="1">北京</option> <option ...
- redis下载安装配置教程
参考 https://www.cnblogs.com/taostaryu/p/9481749.html 上面做完后, 打开客户端 $ redis-cli 以上命令将打开以下终端: redis 127. ...
- UVA1395 Slim Span(kruskal)
题目:Slim Span UVA 1395 题意:给出一副无向有权图,求生成树中最小的苗条度(最大权值减最小权值),如果不能生成树,就输出-1: 思路:将所有的边按权值有小到大排序,然后枚举每一条边, ...
- fastclick:处理移动端click事件300毫秒延迟
fastclick:处理移动端click事件300毫秒延迟 1.兼容性 iOS 3及更高版本的移动Safari iOS 5及更高版本的Chrome Android上的Chrome(ICS) Opera ...
- BUPT2017 springtraining(16) #4 ——基础数论
题目在这里 A.手动打表找规律得组合数 n -= 2, m -= 2, ans = C(n, m) #include <bits/stdc++.h> using namespace std ...
- Divisible Group Sums
Divisible Group Sums Given a list of N numbers you will be allowed to choose any M of them. So you c ...