zoukankan      html  css  js  c++  java
  • Wannafly camp Day1 B Board

    题意

      给一个矩阵,是对初始为0的矩阵做若干次对某一行或某一列的所有元素同时加上一个值的操作后得到的,其中有一个位置被隐藏,问隐藏的值。

    题解

      假设第i行被加的值为Ai,第i列被加的值为Bi,这样只需要对某一行和某一列差分,就可以得到数列A和B的差值数组,然后对左上角或右下角加上或减去值即可。

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 
     4 int a[1010][1010];
     5 
     6 int main()
     7 {
     8     int n;
     9     scanf("%d", &n);
    10     int sx(0), sy(0);
    11     for (int i = 0; i < n; ++i)
    12         for (int j = 0; j < n; ++j)
    13         {
    14             scanf("%d", &a[i][j]);
    15             if (a[i][j] == -1)
    16                 sx = i, sy = j;
    17         }
    18     if (sx != 0 && sy != 0)
    19         printf("%d
    ", a[0][sy] + a[sx][0] - a[0][0]);
    20     else
    21     {
    22         if (sx == 0 && sy == 0)
    23             printf("%d
    ", a[n - 1][0] + a[0][n - 1] - a[n - 1][n - 1]);
    24         else
    25             if (sx == 0)
    26                 printf("%d
    ", a[1][sy] + a[0][0] - a[1][0]);
    27             else
    28                 if (sy == 0)
    29                     printf("%d
    ", a[sx][1] + a[0][0] - a[0][1]);
    30     }
    31     
    32     return 0;
    33 } 
  • 相关阅读:
    Java 书籍 Top 10
    maven学习笔记
    Extjs study
    初学spring mvc
    spring context:componentscan (转)
    What is AspectJ(转)
    java concurrency 学习
    (转)深入浅出REST
    icloud不用翻就能显示地图的办法(转)
    OSGi知识
  • 原文地址:https://www.cnblogs.com/aseer/p/9460481.html
Copyright © 2011-2022 走看看