今天,我试图解决一个小星星金字塔:
输入:
5 1
输出:
*
**
***
****
代码:
x = 1
y = 0
m, e = map(int, raw_input().split())
while x < m:
print "\n" * y, "*" * e
m -= 1
e += 1
我做到了但有一个更好的解决方案?谢谢=)
答案 0 :(得分:2)
我认为这可以更容易解决:
stop, first = map(int, raw_input().split())
for i in range(stop - 1):
print '*' * (i + first)
答案 1 :(得分:1)
只是为了好玩&gt;:)
class c:
def __init__(s,m,e):
s.e , s.m = sorted([e, m])
s.r = 42
def __iter__(s):
return s
def next(s):
if s.m < s.e:
t = "".join(chr(s.r) for _ in range(s.m))
s.m += 1
return t
else:
raise StopIteration
print "\n".join(c(*map(int,raw_input().split())))
答案 2 :(得分:1)
n = int(raw_input())
for i in range(n): print "*"*i
这看起来像你的程序打算做什么,但由于我在上面的评论中提出的问题,我无法说清楚。