poj 2442Sequence 优先队列的运用

2015-01-24 13:18:29 · 作者: · 浏览: 4

题意:

给m行,每行n个数,从每行取一个数计算和,求前n小的和。

分析:

优先队列的运用,主要是make_heap,pop_heap,push_heap三个STL函数的用法。

代码:

?

//poj 2442 
//sep9
#include 
  
   
#include 
   
     using namespace std; const int maxN=2048; int a[maxN],b[maxN],sum[maxN]; int main() { int cases; scanf("%d",&cases); while(cases--){ int i,j,k,m,n; scanf("%d%d",&m,&n); for(i=0;i
    
     =sum[0]) break; pop_heap(sum,sum+n); sum[n-1]=x; push_heap(sum,sum+n); } } memcpy(a,sum,n*sizeof(a[0])); } sort(a,a+n); for(i=0;i
     
      

?