题目描述 有多少个3*3的矩阵的每一行之和每一列之和等于k,t次询问。 输入格式 第一行一个整数t,表示询问次数。 接下来t行,每行一个整数k,表示询问矩阵每行每列之和的值。 输出格式 对于每个询问,输出一个整数,表示满足条件的3*3矩阵的数量。用c++代码编写出代码
时间: 2024-06-01 11:12:15 浏览: 40
#include <iostream>
using namespace std;
int main()
{
int t;
cin >> t;
while (t--)
{
int k;
cin >> k;
int ans = 0;
for (int i = 1; i <= min(k, 9); i++)
{
for (int j = 1; j <= min(k, 9); j++)
{
int x = k - i - j;
if (x <= 0 || x > 9) continue;
ans += 1;
}
}
cout << ans << endl;
}
return 0;
}
相关问题
有多少个3*3的矩阵的每一行之和每一列之和等于k,t次询问,用c++代码实现
题目描述
有多少个3*3的矩阵的每一行之和每一列之和等于k,t次询问。
输入格式
第一行一个整数t,表示询问次数。
接下来t行,每行一个整数k,表示询问矩阵每行每列之和的值。
输出格式
对于每个询问,输出一个整数,表示满足条件的3*3矩阵的数量。
数据范围
1≤t≤100
−1000≤k≤1000
样例
输入样例:
3
0
4
-4
输出样例:
1
20
20
C++ 代码
题目描述 魔法矩阵是指任意大小的矩阵,每行每列以及两个主对角线的数字和都相等的矩阵。输入一个(3*3)的矩阵,判断该矩阵是否为魔法矩阵。如果是则输出“yes",否则输出”no"。 输入 3*3的矩阵 输出 yes 或者 no
以下是一个 Python 代码实现:
```python
# 读取矩阵
matrix = []
for i in range(3):
row = input().split()
matrix.append([int(num) for num in row])
# 计算行、列、对角线的和
sums = []
for i in range(3):
row_sum = sum(matrix[i])
col_sum = sum([matrix[j][i] for j in range(3)])
sums.append(row_sum)
sums.append(col_sum)
sums.append(matrix[0][0] + matrix[1][1] + matrix[2][2])
sums.append(matrix[0][2] + matrix[1][1] + matrix[2][0])
# 判断是否为魔法矩阵
if len(set(sums)) == 1:
print("yes")
else:
print("no")
```
这个程序先读取一个 3x3 的矩阵,然后计算矩阵的行、列、对角线的和,并把它们存储在一个列表中。最后,如果列表中所有元素都相等,那么这个矩阵就是魔法矩阵,输出 "yes",否则输出 "no"。
阅读全文