NC221794. dd爱矩阵
描述
输入描述
第一行一个数正整数n(1≤n≤500),表示矩阵大小
接下来n行,每行n个数描述矩阵,矩阵中数字取值范围在[1,500000]内
输出描述
一行,n个数,输出前n大的结果
示例1
输入:
5 6 6 4 4 5 5 6 8 5 7 6 1 6 9 4 4 8 8 1 5 9 2 3 9 3
输出:
40 40 40 40 40
C++ 解法, 执行用时: 721ms, 内存消耗: 4112K, 提交时间: 2021-06-02 17:17:04
#include<bits/stdc++.h> using namespace std; const int maxn=500+10; int a[maxn],ans[maxn]; bool cmp(int x,int y) {return x>y;} int main() { int n,i,j,k; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d",&ans[i]); } sort(ans+1,ans+1+n,cmp); for(i=2;i<=n;i++) { for(j=1;j<=n;j++) scanf("%d",&a[j]); sort(a+1,a+1+n,cmp); priority_queue<int>q; for(j=1;j<=n;j++) { for(k=1;k<=n;k++) { q.push(a[j]+ans[k]); } } for(j=1;j<=n;j++) { ans[j]=q.top();q.pop(); } } for(i=1;i<=n;i++) { if(i>1) printf(" "); printf("%d",ans[i]); } printf("\n"); return 0; }