Content

给定一个 \(n\times n\) 的矩阵,每个元素都有一个值,求出处于两条对角线以及中间行和中间列的元素之和。

数据范围:\(1\leqslant n\leqslant 5(\text{A1})/100(\text{A2})\)。

Solution

前置知识:矩阵的主对角线即为左上到右下的对角线,副对角线即为左下到右上的对角线。

我们先观察处于题目中所要求的位置上的元素有哪些特征,以题目中给出的图为例:

设元素的位置为 \((i,j)\),我们发现,主对角线上的元素满足 \(i=j\),副对角线上的元素满足 \(i+j=n+1\),中间行的所有元素的行数都是 \(\left\lfloor\dfrac n2\right\rfloor+1\),中间列的所有元素的列数都是 \(\left\lfloor\dfrac n2\right\rfloor+1\)。

因此,我们输入完 \(n\) 之后先把满足上述条件的所有元素的集合,也就是 \(\{(i,j)\mid i=j\text{ 或 }i+j=n+1\text{ 或 }i=\left\lfloor\dfrac n2\right\rfloor+1\text{ 或 }j=\left\lfloor\dfrac n2\right\rfloor+1\}\) 全部标记一下,输入每个元素的值的时候再把所有标记了的元素加进答案里面即可。

Code

int n, a[107][107], flag[107][107], ans;

int main() {
n = Rint;
F(i, 1, n) flag[i][i] = flag[i][n - i + 1] = flag[n / 2 + 1][i] = flag[i][n / 2 + 1] = 1;
F(i, 1, n) F(j, 1, n) ans += flag[i][j] * (a[i][j] = Rint);
return printf("%d", ans), 0;
}

CF177A1/A2 Good Matrix Elements 题解的更多相关文章

  1. C#版(打败99.28%的提交) - Leetcode 347. Top K Frequent Elements - 题解

    版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C#版 - L ...

  2. Lintcode401 Kth Smallest Number in Sorted Matrix solution 题解

    [题目描述] Find the kth smallest number in at row and column sorted matrix. 在一个排序矩阵中找从小到大的第 k 个整数. 排序矩阵的 ...

  3. POJ3422:Kaka's Matrix Travels——题解

    http://poj.org/problem?id=3422 题目大意: 从左上角走到右下角,中途取数(数>=0),然后该点的数变为0,求走k的总价值和最大值. ———————————————— ...

  4. HDU 4920 Matrix multiplication 题解(内存访问连续性/卡常)

    题目链接 题目大意 多组输入,给你两个n×n的矩阵,要你求他们相乘%3的值 题目思路 这个题目主要是要了解内存访问连续化,要尽量每次访问连续的内存 所以第一种方法会超时,第二种则AC.一种卡常技巧 代 ...

  5. Codeforces Round #177 (Div. 2) 题解

    [前言]咦?如今怎么流行打CF了?于是当一帮大爷在执着的打div 1的时候,我偷偷的在刷div 2.至于怎么决定场次嘛.一般我报一个数字A,随便再拉一个人选一个数字B.然后開始做第A^B场.假设认为机 ...

  6. Prime Matrix(暴力出奇迹)

    Description You've got an n × m matrix. The matrix consists of integers. In one move, you can apply ...

  7. UVA - 10895 Matrix Transpose

    UVA - 10895 Matrix Transpose Time Limit:3000MS   Memory Limit:Unknown   64bit IO Format:%lld & % ...

  8. sparse matrix format

    see Spare Matrix wikipedia item, and scipy's documentation on different choices of sparse matrix typ ...

  9. Matrix快速幂 模板

    讲解:http://www.cnblogs.com/SYCstudio/p/7211050.html 给定n*n的矩阵A,求A^k https://www.luogu.org/problem/show ...

随机推荐

  1. 查询某个信息下只有一条数据的sql

  2. [源码解析] PyTorch 分布式(13) ----- DistributedDataParallel 之 反向传播

    [源码解析] PyTorch 分布式(13) ----- DistributedDataParallel 之 反向传播 目录 [源码解析] PyTorch 分布式(13) ----- Distribu ...

  3. AtCoder Regular Contest 127 题解

    sb atcoder 提前比赛时间/fn/fn/fn--sb atcoder 还我 rating/zk/zk/zk A 签到题,枚举位数 \(+\) 前导 \(1\) 个数然后随便算算贡献即可,时间复 ...

  4. Codeforces 1368E - Ski Accidents(构造+思维)

    Codeforces 题面传送门 & 洛谷题面传送门 神仙构造题(不过可能我构造太烂了?) 首先考虑这个奇奇怪怪的 \(\dfrac{4}{7}\),以及这个每个点出度最多为 \(2\) 的条 ...

  5. CF1202E You Are Given Some Strings...

    题目传送门. 题意简述:给出 \(t\) 与 \(s_{1,2,\cdots,n}\).求对于所有 \(i,j\in[1,n]\),\(s_i+s_j\) 在 \(t\) 中出现次数之和. 如果只有 ...

  6. 深入理解 OpenFOAM 环境变量与编译

    操作系统选择 由于 OpenFOAM 在 Linux 平台开发和测试,在非 Linux 平台无法直接对软件进行编译和安装,所以在非 Linux 平台上最简便方法是使用 docker 容器运行 Open ...

  7. Python time&datetime模块

    1.time&datetime模块 time&datetime是时间模块,常用以处理时间相关问题 time.time() #返回当前时间的时间戳timestamp time.sleep ...

  8. 简易kmeans-c++版本

    typedef double dtype; 主要接口: void Kmeans(const vector<vector<dtype> > &d,int k,string ...

  9. Excel-满足指定条件并且包含数字的单元格数目,DCOUNT()

    DCOUNT函数 函数名称:DCOUNT 主要功能:返回数据库或列表的列中满足指定条件并且包含数字的单元格数目. 使用格式:DCOUNT(database,field,criteria) 参数说明:D ...

  10. javaSE高级篇3 — 网络编程 — 更新完毕

    网络编程基础知识 先来思考两个问题( 在这里先不解决 ) 如何准确的找到一台 或 多台主机? 找到之后如何进行通讯? 网络编程中的几个要素 IP 和 端口号 网络通讯协议:TCP / UDP 最后一句 ...