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

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

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

#include<iostream>
#include<cstdio>
using namespace std;
long long a[][];
int main()
{
int n,x,y;
cin >> n;
for(int i = ;i <= n;i++)
{
for(int j = ;j <= n;j++)
{
cin >> a[i][j];
if(!a[i][j])
{
x = i;
y = j;
}
}
}
if(n == )
{
printf("1\n");
return ;
}
long long sum = ;
for(int i = ;i <= n;i++)
{
if(i != x)
{
for(int j = ;j <= n;j++)
{
sum += a[i][j];
}
break;
}
}
long long now = ;
for(int i = ;i <= n;i++)
{
now += a[x][i];
}
a[x][y] = sum-now;
for(int i = ;i <= n;i++)
{
long long temp1 = ,temp2 = ;
for(int j = ;j <= n;j++)
{
temp1 += a[i][j];
temp2 += a[j][i];
}
if(temp1 != sum || temp2 != sum)
{
cout << - << endl;
return ;
}
}
long long temp1 = ,temp2 = ;
for(int i = ;i <=n;i++)
{
temp1 += a[i][i];
temp2 += a[i][n-i+];
}
if(temp1 != sum || temp2 != sum)
{
cout << - << endl;
return ;
}
if(a[x][y] <= ) cout << - << endl;
else cout << a[x][y] << endl;
return ;
}

Codeforces_711_B的更多相关文章

随机推荐

  1. docker-管理数据

    管理Docker中的数据 默认情况下,在容器内创建的所有文件都存储在可写容器层中.这意味着: 当该容器不再运行时,数据不会持久存在,如果另一个进程需要,则可能很难从容器中获取数据. 容器的可写层紧密耦 ...

  2. linux下配置vnc-server 和gnome-session

    机器比较老,安装时间也十分久远,所以也不知道实验室系统当时是不是完全安装,最近需要使用vnc登录显示界面,结果问题就来了...没有安装vnc-server. (1)机器系统是rhel6.2的,所以就从 ...

  3. 最新idea注册激活(永久使用,亲测可用)

    IDEA破解 一.2018版本 首先下载此破解jar包:破解jar包,将其放到合适的文件夹(首选IDEA的同级目录)进行管理: 进入IDEA的根目录,打开bin文件夹中的idea.exe.vmopti ...

  4. codevs 3981 动态最大子段和(线段树)

    题目传送门:codevs 3981 动态最大子段和 题目描述 Description 题目还是简单一点好... 有n个数,a[1]到a[n]. 接下来q次查询,每次动态指定两个数l,r,求a[l]到a ...

  5. 基于JGraphT实现的路径探寻

    基于JGraphT实现的路径探寻 业务中提出基于内存,探寻的两点间的有向以及无向路径,多点间的最小子图等需求,以下记录使用JGraphT的实现过程. GraphT是免费的Java类库,提供数学图论对象 ...

  6. 原生js面向对象编程-选项卡(自动轮播)

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. 更加清晰的TFRecord格式数据生成及读取

    TFRecords 格式数据文件处理流程 TFRecords 文件包含了 tf.train.Example 协议缓冲区(protocol buffer),协议缓冲区包含了特征 Features.Ten ...

  8. java反序列化php序列化的对象

    最近工作中遇到一个需要解析php序列化后存入DB的array, a:4:{i:0;a:2:{s:11:"province";s:8:"0016";s:7:&qu ...

  9. Java 添加、修改、读取、复制、删除Excel批注

    本文介绍通过Java程序来操作Excel批注的方法.操作内容包括批注添加(添加批注文本.背景色.字体.自适应等).修改.读取(文本.图片).复制.删除等. 工具:Free Spire.XLS for ...

  10. django.db.migrations.exceptions.MigrationSchemaMissing和raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

    1.使用Python3.7 + Django2.2 + MySQL 5.5 在执行(python manage.py migrate)命令时出现错误django.db.migrations.excep ...