矩阵求和
程序员文章站
2022-07-15 08:07:11
...
思路:直接求带色部分的值即可。当时自己做的时候误以为是求灰色部分的和,粗心了没看到题目让求的是矩阵和。。。
#include <iostream>
#include <math.h>
using namespace std;
int a[1000][1000];
int main()
{
int n,m,t,sum;
cin>>n;
t = 1; sum = 0; m = n / 2;
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n; j++)
{
a[i][j] = t++;
}
}
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n; j++)
{
if(i <= m && j >= m - i && j <= m + i) //计算上半三角的和(包括中线部分)
{
sum += a[i][j];
}
else if(i > m && j >= i - m && j <= n - (i - m + 1)) //计算下半三角的和(不包括中线部分)
{
sum += a[i][j];
}
}
}
cout<<sum;
return 0;
}