洛谷P5725 【深基4.习8】求三角形 (python版)
题目描述模仿例题,打印出不同方向的正方形,然后打印三角形矩阵。中间有个空行。输入格式输入矩阵的规模,不超过 9。输出格式输出矩形和正方形个人心得:其实这是一道很简单的题,也不需要什么算法知识。最开始的时候我没有写print(" "*(n-i)*2,end=’’)这一行语句,导致我输出的三角形一直都是左对齐,我查了很多的资料和博客,我发现它们给出的方法根本解决不了这种情况,然后我就只能通过一个最笨最
·
题目描述
模仿例题,打印出不同方向的正方形,然后打印三角形矩阵。中间有个空行。
输入格式
输入矩阵的规模,不超过 9。
输出格式
输出矩形和正方形
个人心得:
其实这是一道很简单的题,也不需要什么算法知识。最开始的时候我没有写print(" "*(n-i)*2,end=’’)这一行语句,导致我输出的三角形一直都是左对齐,我查了很多的资料和博客,我发现它们给出的方法根本解决不了这种情况,然后我就只能通过一个最笨最原始的方法(在数据前先将空格填充完),这样我输出的数据就会边成右对齐的形式。
原始版本:
n = int(input())
#打印正方形
for i in range(1,(n*n)+1):
if i % n ==0:
print("%02d" % i)
else:
print("%02d" % i, end='')
print()
#打印三角形
count = 1
for i in range(1, n+1):
# print(" "*(n-i)*2,end='')
for j in range(1, i+1):
if j == i:
print("%02d" % count)
else:
#print(f"{count:>2*n}")
print("%02d" % count, end='')
count += 1
此时出现的结果就是这个:
这个是能够AC的版本:
n = int(input())
#打印正方形
for i in range(1,(n*n)+1):
if i % n ==0:
print("%02d" % i)
else:
print("%02d" % i, end='')
print()
#打印三角形
count = 1 #保存即将要输出的数
for i in range(1, n+1):
print(" "*(n-i)*2,end='') #为了使输出的数能右对齐
for j in range(1, i+1):
if j == i:
print("%02d" % count)
else:
print("%02d" % count, end='')
count += 1

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)