900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 你还会想起这道题吗

你还会想起这道题吗

时间:2024-01-22 01:27:10

相关推荐

你还会想起这道题吗

链接:登录—专业IT笔试面试备考平台_牛客网

来源:牛客网

题目描述

原神是由米哈游自主研发的一款全新开放世界冒险游戏。游戏发生在一个被称作「提瓦特」的幻想世界,在这里,被神选中的人将被授予「神之眼」,导引元素之力。你将扮演一位名为「旅行者」的神秘角色,在自由的旅行中邂逅性格各异、能力独特的同伴们,和他们一起击败强敌,找回失散的亲人——同时,逐步发掘「原神」的真相。

现在,你作为异世界的旅行者,发现了一个富含元素能量的神秘正方形矩阵,并邂逅了一位性格迥异、能力独特的同伴——lwy。

矩阵外围着一层厚厚的墙壁,lwy正游荡在矩阵中收集能量值,顽固不化的他将从矩阵的左上角开始,从上、下、左、右、斜对角之中选定一个特定的方向(注意斜对角可能是正对角,也可能是反对角),并朝着这个方向坚定不移地在矩阵中前行,并收集能量值。然而,lwy是个路痴,一旦朝着的这个方向遇到了墙壁,lwy就会改变方向,朝着新的方向继续前行,直至又遇到墙壁,周而复始,直至把所有能走的路都走完……

通俗但不准确的来讲,lwy所走过的路可以如下图所示——

注意,能量值被收集过后将会消失,无法二次收集利用。很可惜lwy记性不好,忘记收集了多少能量值了qwq,聪明的你能帮他算算最终收集了多少能量值吗?

快帮帮lwy吧……qwq。

输入描述:

输入格式

第一行输入一个正整数n,表示一个n×nn\times nn×n的矩阵大小

接下来输入一个n×nn \times nn×n的矩阵,表示矩阵各个位置所具有的能量值

1≤n≤501\le n\le 501≤n≤50

保证矩阵的各个位置的元素均为正整数,且不超过100

输出描述:

输出一个整数,表示最终收集的能量值

示例1

输入

51 3 5 7 92 4 6 8 103 5 7 9 114 6 8 10 125 7 9 11 13

输出

147

说明

1+3+5+7+9+2+4+8+10+3+7+11+4+6+10+12+5+7+9+11+13=147

这一题我的做法就是把第一行和最后一行加起来,然后再把第一列和最后一列加起来,然后加上左上到右下的对角,最后加上另外一个对角,加过的就标为0,然后加的时候进行判断,就不会有重复

#include<bits/stdc++.h>using namespace std;int main(){int n,i,j,y=0,a[55][55],x=0,z=0;cin>>n;for(i=1;i<=n;i++){for(j=1;j<=n;j++)cin>>a[i][j];}for(i=1;i<=n;i++){for(j=1;j<=n;j++)if((i==1||i==n)&&a[i][j]){y+=a[i][j];a[i][j]=0;}}for(i=1;i<=n;i++){for(j=1;j<=n;j++)if((j==1||j==n)&&a[i][j]){y+=a[i][j];a[i][j]=0;}}for(i=1;i<=n;i++)if(a[i][i]){ y+=a[i][i];a[i][i]=0;}z=n;for(i=1;i<=n;i++){if(a[i][z]){ y+=a[i][z];a[i][z]=0;}z--;} cout<<y;return 0;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。