结果填空:矩阵求和
给你一个从 n \times nn×n 的矩阵,里面填充 11 到 n \times nn×n 。例如当 nn 等于 33 的时候,填充的矩阵如下。
1 2 3
4 5 6
7 8 9
现在我们把矩阵中的每条边的中点连起来,这样形成了一个新的矩形,请你计算一下这个新的矩形的覆盖的数字的和。比如,n = 3n=3 的时候矩形覆盖的数字如下。
2
4 5 6
8
那么当 nn 等于 101101 的时候,矩阵和是多少?
解题思路
先通过行列的特点,出书行列号检验。
再通过行列计算函数计算即可
答案:
26020201
完整代码
#include <bits/stdc++.h>
using namespace std;
int n=101;
int jisuan(int x,int y)
{
return x*n+y+1;
}
int main()
{
int score=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(i<=n/2)
{
if((i+j)>=n/2 && (abs(i-j)<=n/2))
score+=jisuan(i,j);
}
else
{
int x=n-i-1;
if((x+j)>=n/2 && (abs(x-j)<=n/2))
score+=jisuan(i,j);
}
}
// cout<<endl;
}
cout<<score;
}
注意:不要随便省略大括号,写着方便阅读,也不容易出错。