【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;
	} 
}
相关推荐
唐墨1231 小时前
linux kernel 比较数据大小的宏定义
linux·算法
拂拉氏2 小时前
【知识讲解-题目讲解】 统计满足K约束的子字符串数量2 (滑动窗口+前缀和+二分查找+分析)
算法·前缀和·二分查找·滑动窗口
通信小呆呆6 小时前
电子战抗干扰技术:当“不被干扰”成为一种系统
算法·通信·mimo·isac
老歌老听老掉牙6 小时前
案例 7:二维 Rosenbrock 函数最小值(香蕉函数)
c++·pso
笑容掩饰我的失落6 小时前
区块链从小白到精通(八):从零实现一个标准 ERC-20 代币(完整可运行代码)
算法·区块链·php·智能合约·哈希算法
Severus_black7 小时前
【C++初阶】Stack、Queue算法题大练兵!
c语言·c++·算法·stl
唐青枫9 小时前
C 语言 strcpy() 用法详解与实战 Demo
c语言
2601_9679791210 小时前
机器学习必修课:经典算法与Python实战
python·算法·机器学习·实战·课程
程序猿打工仔10 小时前
计算机基础(C语言)考编、专技岗
c语言·开发语言·算法
通信小呆呆10 小时前
电子战干扰技术:从“蛮力压制”到“精准欺骗”,再到“认知博弈”
算法·通信·isac