1 条题解
-
0
#include<bits/stdc++.h> using namespace std; const int N=2100; int a[N],b[N],c[N],n,m; typedef pair<int ,int > PII; void merge() { priority_queue <PII,vector<PII>,greater<PII>> q; for(int i=1;i<=n;i++) q.push({a[1]+b[i],1}); for(int i=1;i<=n;i++) { auto t=q.top(); q.pop(); int s=t.first,p=t.second; c[i]=s; q.push({s-a[p]+a[p+1],p+1}); } for(int i=1;i<=n;i++)a[i]=c[i]; } int main() { int T;scanf("%d",&T); while(T--) { scanf("%d%d",&m,&n); for(int i=1;i<=n;i++)scanf("%d",&a[i]); sort(a+1,a+n+1); for(int i=2;i<=m;i++) { for(int j=1;j<=n;j++)scanf("%d",&b[j]); merge(); } for(int i=1;i<=n;i++)printf("%d ",a[i]); printf("\n"); } return 0; }
- 1
信息
- ID
- 1285
- 时间
- 2000ms
- 内存
- 64MiB
- 难度
- 6
- 标签
- 递交数
- 110
- 已通过
- 38
- 上传者