CodeForces

来源:互联网 发布:云计算与超级计算机 编辑:程序博客网 时间:2024/06/05 18:26

给定确定的 1-n 我们可以从1开始找,矩阵中某一行一定有n-1个 1, 

然后找 2  ,矩阵中一定有某行 有 n-2 个 2 ,,一次类推

O (n^2) 


#include<iostream>#include<algorithm>#include<cstdio>#include<cstdlib>#include<cstring>#include<string>#include<cmath>#include<set>#include<queue>#include<stack>#include<map>typedef long long ll;const int maxn = 55 + 7, INF = 0x7f7f7f7f, mod = 1e9 + 7;int n;int a[maxn][maxn] = {0};int ans[maxn];int main() {    scanf("%d", &n);    int x;    for(int i = 1; i <= n; ++i) {        for(int j = 1; j <= n; ++j) {            scanf("%d", &x);            a[i][x]++;        }    }    int t = n-1;    for(int i = 1; i < n; ++i) {        for(int j = 1; j <= n; ++j) {            if(a[j][i] == t) { ans[j] = i; break;}        }        t--;    }    for(int i = 1; i <= n; ++i) {        if(ans[i] == 0) printf("%d%c", n, (i == n ? '\n' : ' '));        else printf("%d%c", ans[i], (i == n ? '\n' : ' '));    }    return 0;}