Sequence Poj
来源:互联网 发布:httpclient js 编辑:程序博客网 时间:2024/06/05 17:09
从网上找来了代码,自己又加了优化(先将每次读入的行排序),才结束了漫长的TLE,代码如下:
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <set>#include <queue>#include <map>#include <string>#include <cctype>using namespace std;const int maxn=100010;int a[2010];int m,n;int main(){ int t; int b,c,flag; scanf("%d",&t); while(t--){ priority_queue<int,vector<int>, greater<int> > minheap; priority_queue<int,vector<int> ,less<int> > maxheap; scanf("%d %d",&m,&n); for(int i=0;i<n;i++){ scanf("%d",&b); minheap.push(b); } for(int i=1;i<m;i++){ for(int j=0;j<n;j++){ scanf("%d",&a[j]); } sort(a,a+n); while(!minheap.empty()){ b=minheap.top(); minheap.pop(); if(!maxheap.empty() && (b+a[0])>=maxheap.top()) continue; for(int j=0;j<n;j++){ if(maxheap.size()<n){ maxheap.push(b+a[j]); } else if(maxheap.size()==n && maxheap.top()>(b+a[j])){ maxheap.pop(); maxheap.push(b+a[j]); } else if(b+a[j]>=maxheap.top()) break; } } while(!maxheap.empty()){ minheap.push(maxheap.top()); maxheap.pop(); } } for(int i=0;i<n;i++){ printf("%d ",minheap.top()); minheap.pop(); } printf("\n"); }//end for while-t}
阅读全文
0 0
- Sequence Poj
- POJ 1019 Number Sequence
- POJ 1141 Brackets Sequence
- POJ 1141 Brackets Sequence
- Brackets Sequence--poj--1141
- POJ 1019 Number Sequence
- poj 1141 Brackets Sequence
- poj 1019 Number Sequence
- poj 1141 Brackets Sequence
- poj 1019 Number Sequence
- poj 2478 Farey Sequence
- poj 2478 Farey Sequence
- POJ 1141 Brackets Sequence
- POJ 1019 Number Sequence
- poj 1019 Number Sequence
- POJ-1019 Number Sequence
- POJ 1141 Brackets Sequence
- poj Number Sequence
- 剑指offer 编程题(20):栈的压入和弹出序列比较
- 从头到尾彻底解析Hash表算法
- Set集合和List集合
- 数组排序
- 浅谈协方差矩阵
- Sequence Poj
- Java类变量类型
- IE6双倍边距问题及其解决方法
- Unity "Apply Root Motion" 与 “Bake into Pose”
- linux 通过crt直接上传和下载文件和文件
- AppCompatActivity 中的Menu (菜单)
- elasticsearch-2.3.4 ik分词器
- 2017北京云栖大会拉开帷幕,Clouder Lab动手实验室受开发者欢迎
- px4原生源码学习四--Nuttx 实时操作系统编程