链接:https://www.nowcoder.com/acm/contest/93/B
来源:牛客网
题目描述
给你一个n*n矩阵,按照顺序填入1到n*n的数,例如n=5,该矩阵如下
1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 |
现在让你连接相邻两条边的中点,然后只保留他们围成封闭图形区域的数字,那么这个矩阵变为
|
| 3 |
|
|
| 7 | 8 | 9 |
|
11 | 12 | 13 | 14 | 15 |
| 17 | 18 | 19 |
|
|
| 23 |
|
|
现在你们涵哥让你求变化后的矩阵的所有元素的和为多少
输入描述:
输入第一行一个整数T(1<=T<=100) 接下来有T组测试数据,每组测试数据输入一个整数n(3<=n<=10000) 保证输入的n为奇数
输出描述:
对于每组测试数据,输出对应答案
示例1
输入
2 3 5
输出
25 169
找数字的规律就行了,没必要用数组填数来实现。
#include<cstdio>
typedef long long ll;
int main(){
int t;
scanf("%d",&t);
ll n;
while(t--){
scanf("%lld",&n);
printf("%lld\n",((n*n)+1)*((n*n)+1)/4);
}
return 0;
}