【GESP真题解析】第 20 集 GESP 二级 2025 年 3 月编程题 1:等差矩阵

大家好,我是莫小特。

这篇文章给大家分享 GESP 二级 2025 年 3 月编程题第 1 题:等差矩阵。

题目链接

洛谷链接:B4259 等差矩阵

一、完成输入

根据题意,一行,两个正整数 n,m。

n 和 m的数据范围:对于所有测试点,保证 1≤n,m≤50。

使用 int 就够了。

cpp 复制代码
int y,m,d,h,k;
cin>>y>>m>>d>>h>>k;

输入部分完成后,我们来分析题目意思。

二、分析题意

根据题目描述,小 A 想构造一个 n 行 m 列的矩阵,使得矩阵的每一行与每一列均是等差数列,这个看不出什么意思,可以代入到样例输入和样例输出中。

再根据题目中说明的:在矩阵的第 i 行第 j 列填入整数 i×j,得到的矩阵能满足要求。

所以使用二维数组解决,数据范围:1≤n,m≤50

cpp 复制代码
int x[55][55];

第 i 行第 j 列填入整数 i×j,转为代码:

cpp 复制代码
x[i][j]=i*j;

使用 for 循环嵌套,遍历 i 和 j 的值。

cpp 复制代码
for(int i=1;i<=n;i++)
{
	for(int j=1;j<=m;j++)
	{
		x[i][j]=i*j;
	}
}

最后完成输出即可。

cpp 复制代码
for(int i=1;i<=n;i++)
{
	for(int j=1;j<=m;j++)
	{
		cout<<x[i][j]<<" ";	
	}	
	cout<<"\n";
}

三、验证数据

提交到网站中,通过!

四、完整代码

完整代码如下:

cpp 复制代码
#include <iostream>
using namespace std;
int x[55][55];
int main()
{
	int n,m;
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			x[i][j]=i*j;
		}
	}
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			cout<<x[i][j]<<" ";	
		}	
		cout<<endl;
	} 
}
相关推荐
式51618 小时前
线性代数(八)非齐次方程组的解的结构
线性代数·算法·机器学习
Nandeska18 小时前
2、数据库的索引与底层数据结构
数据结构·数据库
fpcc18 小时前
跟我学C++中级篇——std::is_invocable的分析应
c++
橘颂TA19 小时前
【剑斩OFFER】算法的暴力美学——翻转对
算法·排序算法·结构与算法
叠叠乐19 小时前
robot_state_publisher 参数
java·前端·算法
hweiyu0019 小时前
排序算法:冒泡排序
算法·排序算法
brave and determined19 小时前
CANN训练营 学习(day9)昇腾AscendC算子开发实战:从零到性能冠军
人工智能·算法·机器学习·ai·开发环境·算子开发·昇腾ai
Dave.B19 小时前
用【vtk3DLinearGridCrinkleExtractor】快速提取3D网格相交面
算法·3d·vtk
yaoh.wang20 小时前
力扣(LeetCode) 1: 两数之和 - 解法思路
python·程序人生·算法·leetcode·面试·跳槽·哈希算法