博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2019ICPC银川 B. So Easy(思维)
阅读量:223 次
发布时间:2019-03-01

本文共 693 字,大约阅读时间需要 2 分钟。

题意:

有一个n*m的矩阵,一开始为全0

一次操作中可以将一行或者一列全部+1
在若干次操作之后,矩阵的某一个格子缺失了
现在给你这个缺失了一个格子的矩阵,问缺失的位置上的数是多少

数据范围:n,m<=1e3

解法:

在这里插入图片描述

上图中:1+3=2+4。

因为1进行过的操作一部分2也进行过,一部分4也进行过。
2进行过的操作一部分1也进行过,一部分3也进行过。
同理,每个格子都和两边的格子有关系,可以退出1+3=2+4,
4个变量中有3个是已知的,减一下就得到剩下那个了。

注意特判一下-1格子在四个角的情况。

code:

#include
using namespace std;const int maxm=1e3+5;int g[maxm][maxm];int n;signed main(){
scanf("%d",&n); int x=1,y=1; for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
scanf("%d",&g[i][j]); if(g[i][j]==-1){
x=i,y=j; } } } //枚举四个角的情况 if(x==1&&y==1){
int a=g[x+1][y+1]; int b=g[x+1][y]+g[x][y+1]; cout<
<

转载地址:http://vgkv.baihongyu.com/

你可能感兴趣的文章