0
点赞
收藏
分享

微信扫一扫

蓝桥杯 基础练习 字母图形 python|CSDN创作打卡

律楷粑粑 2022-02-09 阅读 90

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

资源限制

时间限制:1.0s 内存限制:256.0MB

问题描述

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

ABCDEFG

BABCDEF

CBABCDE

DCBABCD

EDCBABC

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

输入格式

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

输出格式

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

样例输入

5 7

样例输入

ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC

数据规模与约定

1 <= n, m <= 26。

实现代码

a,b=map(int,input().split()) #map()根据提供的函数对指定序列进行映射,input().split()同时输入多个值数据类型为str
list1=[[0 for n in range(26)] for m in range(26)]
list2=[[0 for n in range(b)] for m in range(a)]

for n in range(26):
    for m in range(26):
        if m<n:
            list1[n][m]=ord('A')+n-m
        else:
            list1[n][m]=ord('A')+m-n
for i in range(a):
    for x in range(b):
        list2[i][x]=list1[i][x]
        print(chr(list2[i][x]),end=' ')
    print()

注意事项

1.创建二维空列表

list2=[[0 for n in range(b)] for m in range(a)]

其中前方括号代表表示列,后方括号代表行
即创建了a行含有b个元素的列表

2.26个字母的遍历(ord函数和chr函数的使用)

26个字母遍历时我们先用ord函数将其转化为其对应的ASCII值
进行加减后再用chr函数还原

a=ord('A')
print(a)
b=chr(a)
print(b)

ord()函数返回类型为int类型
可以进行加减运算
chr()函数与ord()函数作用相反

审题

题目中输出数据中各字母间无空格,容易出错

举报

相关推荐

0 条评论