【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;
	} 
}
相关推荐
你也向往长安城吗11 分钟前
推荐一个三维导航库:three-pathfinding-3d
javascript·算法
蒋星熠14 分钟前
C++零拷贝网络编程实战:从理论到生产环境的性能优化之路
网络·c++·人工智能·深度学习·性能优化·系统架构
百度智能云27 分钟前
VectorDB+FastGPT一站式构建:智能知识库与企业级对话系统实战
算法
CHANG_THE_WORLD28 分钟前
# C++ 中的 `string_view` 和 `span`:现代安全视图指南
开发语言·c++
雨落倾城夏未凉28 分钟前
9.c++new申请二维数组
c++·后端
雨落倾城夏未凉1 小时前
8.被free回收的内存是立即返还给操作系统吗?为什么?
c++·后端
雨落倾城夏未凉1 小时前
6.new和malloc的区别
c++·后端
郝学胜-神的一滴1 小时前
深入理解QFlags:Qt中的位标志管理工具
开发语言·c++·qt·程序人生
John.Lewis1 小时前
数据结构初阶(13)排序算法-选择排序(选择排序、堆排序)(动图演示)
c语言·数据结构·排序算法
AI小白的Python之路1 小时前
数据结构与算法-排序
数据结构·算法·排序算法