千千蓝鲸3824

描述

有一个 n×n 的方阵,第 1 行、第 n 行和辅对角线共同组成一个“Z”字。请计算这个“Z”字上所有元素的和。

输入描述

第一行一个正整数 n

接下来 n 行,每行 n 个整数,用空格隔开。

输出描述

一个整数。

样例输入 1

3

0 1 2

0 1 2

0 1 2

样例输出 1

7

样例输入 2

4

5 1 2 1

0 1 2 1

2 1 2 1

0 0 9 3

样例输出 2

24

提示

数据范围与提示

1≤n≤20,0≤数字≤9

ac代码

#include <iostream>

typedef long long Int;

constexpr Int maxn = 100, maxm = 100;

Int n, a[maxn][maxm];

int main() {

std::cin >> n;

for (Int i = 0; i < n; i++) {

for (Int j = 0; j < n; j++) {

std::cin >> a[i][j];

}

}

Int sum=0;

for(Int i=0;i<n;i++){

sum+=a[0][i];

}//下一行,j一开始写成了1,遍历时会变成这样:

j应该从尾开始for。就是这样:

然后考虑到第1和n行的末尾和头遍历过了不再遍历

for(Int i=1,j=n-2;i<n-1&&j>=0;i++,j--){

sum+=a[i][j];

}

for(Int i=0;i<n;i++){

sum+=a[n-1][i];

}

std::cout<<sum;

}

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值