POJ-2442-Sequence
来源:互联网 发布:手机计算器软件 编辑:程序博客网 时间:2024/04/30 12:27
Sequence
Time Limit: 6000MS Memory Limit: 65536KTotal Submissions: 8855 Accepted: 2937
Description
Given m sequences(序列), each contains n non-negative(非负的) integer(整数). Now we may select one number from each sequence to form a sequence with m integers. It's clear that we may get n ^ m this kind of sequences. Then we can calculate(计算) the sum of numbers in each sequence, and get n ^ m values. What we need is the smallest n sums. Could you help us?
Input
The first line is an integer T, which shows the number of test cases, and then T test cases follow. The first line of each case contains two integers m, n (0 < m <= 100, 0 < n <= 2000). The following m linesindicate(表明) the m sequence respectively(分别地). No integer in the sequence is greater than 10000.
Output
For each test case, print a line with the smallest n sums in increasing order, which is separated by a space.
Sample Input
12 31 2 32 2 3
Sample Output
3 3 4
// 一开始a[]开小了, 叫了两发runtime error
// 用优先队列时注意内存
#include<iostream>#include<string.h>#include<stdio.h>#include<math.h>#include<algorithm>#include<queue>#include<vector>using namespace std;int main(){ int t, n, m, x,a[20001]; scanf("%d", &t); while(t--) { scanf("%d%d", &n,&m); priority_queue< int , vector<int> , greater<int> >qq; priority_queue< int , vector<int> , less<int> >p; for(int i = 0; i<n; ++i) { if(!i) { for(int j = 0; j<m; ++j) { scanf("%d", &x); qq.push(x); } } else { for(int j = 0; j<m; ++j) a[j] = qq.top(), qq.pop(); while(!qq.empty())qq.pop(); for(int j = 0; j<m; ++j) { scanf("%d", &x); for(int k = 0; k<m; ++k ) if((int)p.size()<m)p.push(x+a[k]); else if(x+a[k]<p.top()) { p.push(x+a[k]); p.pop(); } } while(p.size()) { qq.push(p.top()); p.pop(); } } } for(int i = 0; i<m; ++i) { printf("%d%c", qq.top(), (i==m-1)?'\n':' '); qq.pop(); } } return 0;}
0 0
- POJ 2442 Sequence
- POJ 2442 Sequence
- POJ 2442 Sequence(堆)
- POJ 2442 Sequence【堆】
- poj 2442 Sequence
- POJ 2442 Sequence
- POJ - 2442 Sequence
- POJ 2442 Sequence
- Poj 2442 Sequence
- 【POJ 2442】Sequence
- poj 2442 Sequence
- POJ 2442 Sequence
- Sequence(POJ--2442
- poj-2442Sequence
- poj 2442 Sequence
- poj 2442 Sequence
- POJ-2442-Sequence
- POJ-2442 Sequence
- hdoj5444Elven Postman
- 2016/08 Week3 Vocabulary
- 浏览器窗口可视区域大小
- [88] Merge Sorted Array
- Unity 支持 IPV6 (IOS)
- POJ-2442-Sequence
- Codeforces Gym100531D Digits 暴力
- 郑轻OJ/ ZZULIOJ 1899 985的最大和难题(思维)
- Hdu 4458 Shoot the Airplane(判断点在多边形内)
- 一篇超容易让人理解的KMP算法文章
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- void的使用
- hdu 5795 A Simple Nim(2016 Multi-University Training Contest 6——博弈)
- JAVA线程:概念与原理