专栏首页开心的学习之路基础练习 字母图形

基础练习 字母图形

问题描述

利用字母可以组成一些美丽的图形,下面给出了一个例子:

ABCDEFG

BABCDEF

CBABCDE

DCBABCD

EDCBABC

这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。

输入格式

输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。

输出格式

输出n行,每个m个字符,为你的图形。

样例输入

5 7

样例输出

ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC

数据规模与约定

1 <= n, m <= 26。 思路1:          第0行的每个元素为'A' + 0, 'A' + 1, ..., 'A' + m,第1行的每个元素为'A' + 1, 'A' + 0, 'A' + 1, ... , 'A' + m - 1,依次类推,得到第i行的每个元素为'A' + |i - j|(j = 0, 1, 2, ... )。

#include <iostream>
#include <cmath>
using namespace std;
int main()
{
    int n, m;
    cin >> n >> m;
    for (int i = 0; i < n; ++i)
    {
        for (int j = 0; j < m; ++j)
            cout << char('A' + abs(i - j));
        cout << endl;
    }
    return 0;
}

思路2:           确定每行A的位置,依次打印A前的元素和A后的元素。

#include <cstdio>

int main()
{
	char a[26][26];
	int n,m;
	scanf("%d%d", &n, &m);
	for(int i = 0; i < 26; i++)
	{
		a[i][i] = 'A';
		int f = 1;
		for(int j = i + 1; j < 26; j++)
		{
			a[i][j] = a[i][i] + f;
			f++;
		}
		if(i > 0)
		{
			int k = 1;
			for(int j = i - 1; j >= 0; j--)
			{
				a[i][j] = a[i][i] + k;
				k++;
			}
		}
	}
	for(int i = 0; i < n; i++)
	{
		for(int j = 0; j < m; j++)
		{
			printf("%c",a[i][j]);
		}
		printf("\n");
	}
	return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 蓝桥杯 基础练习 字母图形

    样例输入 5 7 样例输出 ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC

    Meng小羽
  • 【Python】蓝桥杯基础练习 字母图形

    Regan Yue
  • Python|字母图形

    不难看出坐标为(x,x)的字母都是A,然后向左右延伸。但这道题的思路有很多,可以以A为基础左右延伸,也可以以第一行为基础,也可以以第一列为基础。还有很多的思路,...

    算法与编程之美
  • 基础练习 回形取数

      回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。

    刘开心_1266679
  • 基础练习 矩形面积交

      平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。

    刘开心_1266679
  • 基础练习 杨辉三角形

    杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。下面给出了杨辉三角形...

    刘开心_1266679
  • 基础练习 01字串

    对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

    刘开心_1266679
  • 【蓝桥杯】BASIC-3 字母图形

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    喜欢ctrl的cxk
  • 蓝桥杯 基础练习 回形取数

      回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。输入格式  输入第一行是两个不超过200的正整数m...

    Meng小羽
  • 基础练习 特殊的数字

      153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。

    刘开心_1266679
  • 基础练习 FJ的字符串

      FJ在沙盘上写了这样一些字符串:   A1 = “A”   A2 = “ABA”   A3 = “ABACABA”   A4 = “ABACABAD...

    刘开心_1266679
  • 每日一练(2017/5/14)

    Java基础 | 数据库 | Android | 学习视频 | 学习资料下载 课前导读 ●回复“每日一练”获取以前的题目! ●答案公布时间:为每期发布题目的第二...

    Java学习
  • 蓝桥杯 基础练习 矩形面积交

    平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。

    Meng小羽
  • 蓝桥杯 基础练习 杨辉三角形

    输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。

    Meng小羽
  • 《陪孩子写作业》附录:敲黑板!把孩子陪成的独家方法与窍门

    yeedomliu
  • 蓝桥杯 基础练习 01字串

    对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

    Meng小羽
  • paddlepaddle中文词法分析LAC

    链接:https://pan.baidu.com/s/1uK9Cq55RZinAIDAcdCOLuw 提取码:sjpy

    西西嘛呦
  • 蓝桥杯 试题 基础练习 回形取数

    杨鹏伟
  • 【Python】蓝桥杯基础练习 01字串

    资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

    Regan Yue

扫码关注云+社区

领取腾讯云代金券