zoukankan      html  css  js  c++  java
  • Codeforces_711_B

    http://codeforces.com/problemset/problem/711/B

    比较简单,过程有点繁琐,先找一行包含那个0的行,得到和,以此填出0位置的值,然后判断这个矩阵是否符合条件。

    要注意的是,n=1的情况,数据超了int,结果不为负。

    #include<iostream>
    #include<cstdio>
    using namespace std;
    long long a[505][505];
    int main()
    {
        int n,x,y;
        cin >> n;
        for(int i = 1;i <= n;i++)
        {
            for(int j = 1;j <= n;j++)
            {
                cin >> a[i][j];
                if(!a[i][j])
                {
                    x = i;
                    y = j;
                }
            }
        }
        if(n == 1)
        {
            printf("1
    ");
            return 0;
        }
        long long sum = 0;
        for(int i = 1;i <= n;i++)
        {
            if(i != x)
            {
                for(int j = 1;j <= n;j++)
                {
                    sum += a[i][j];
                }
                break;
            }
        }
        long long now = 0;
        for(int i = 1;i <= n;i++)
        {
            now += a[x][i];
        }
        a[x][y] = sum-now;
        for(int i = 1;i <= n;i++)
        {
            long long temp1 = 0,temp2 = 0;
            for(int j = 1;j <= n;j++)
            {
                temp1 += a[i][j];
                temp2 += a[j][i];
            }
            if(temp1 != sum || temp2 != sum)
            {
                cout << -1 << endl;
                return 0;
            }
        }
        long long temp1 = 0,temp2 = 0;
        for(int i = 1;i <=n;i++)
        {
            temp1 += a[i][i];
            temp2 += a[i][n-i+1];
        }
        if(temp1 != sum || temp2 != sum)
        {
            cout << -1 << endl;
            return 0;
        }
        if(a[x][y] <= 0)    cout << -1 << endl;
        else                cout << a[x][y] << endl;
        return 0;
    }
  • 相关阅读:
    吴军博士《浪潮之巅》
    第十二周
    第十一周
    第十周
    第九周
    第四次作业
    第四周
    学习进度表
    世界是数字的
    第二阶段团队第八天成果。
  • 原文地址:https://www.cnblogs.com/zhurb/p/5858575.html
Copyright © 2011-2022 走看看