码迷,mamicode.com
首页 > 其他好文 > 详细

uva 11997(优先队列)

时间:2017-10-27 19:12:12      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:pac   想法   优先队列   ace   priority   queue   max   not   string   

不说了,这种优化想法想不到,刘汝嘉牛逼

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <queue>
using namespace std;
const int maxn=800;
int a[maxn][maxn];
int n;
struct note
{
    int s;
    int b;
   bool operator <(const note &p) const
   {
       return s>p.s;
   }
};
void mage(int *A,int *B,int *C,int n)
{
     priority_queue<note> pq;
     for(int i=0;i<n;i++)
       pq.push(note{A[i]+B[0],0});
    for(int i=0;i<n;i++)
    {
        note nn=pq.top();
        pq.pop();
        C[i]=nn.s;
        int b=nn.b;
        if(b+1<n) pq.push(note{nn.s-B[b]+B[b+1],b+1});
    }

}
int main()
{
    while(~scanf("%d",&n))
    {
         for(int i=0;i<n;i++)
         {
          for(int j=0;j<n;j++)
             scanf("%d",&a[i][j]);
          sort(a[i],a[i]+n);
         }
         for(int i=1;i<n;i++)
            mage(a[0],a[i],a[0],n);
         for(int i=0;i<n-1;i++)
        printf("%d ",a[0][i]);
        printf("%d\n",a[0][n-1]);

    }
    return 0;
}

 

uva 11997(优先队列)

标签:pac   想法   优先队列   ace   priority   queue   max   not   string   

原文地址:http://www.cnblogs.com/Wangwanxiang/p/7744757.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!