楼梯#&引用;用Python编写的程序,正确的输出,但不限定默认测试用例
编写一个程序,打印一个大小的楼梯 输入格式:单个整数n,表示楼梯的大小 输出格式:使用#符号和空格打印大小为n的楼梯 注意:最后一行中必须有0个空格 我的程序给出了正确的输出,但没有通过hackerrank中的默认测试用例。我的代码如下:楼梯#&引用;用Python编写的程序,正确的输出,但不限定默认测试用例,python,python-2.x,Python,Python 2.x,编写一个程序,打印一个大小的楼梯 输入格式:单个整数n,表示楼梯的大小 输出格式:使用#符号和空格打印大小为n的楼梯 注意:最后一行中必须有0个空格 我的程序给出了正确的输出,但没有通过hackerrank中的默认测试用例。我的代码如下: import sys val = 1 def stair(n, val): for i in range(n): res1 = " " *n res2 = "#" *val print res1 + re
import sys
val = 1
def stair(n, val):
for i in range(n):
res1 = " " *n
res2 = "#" *val
print res1 + res2
val = val+1
n = n-1
n = int(raw_input().strip())
stair(n, 1)
注意:最后一行中必须有0个空格
您的程序正在最后一行打印一个空格
import sys
val = 1
def stair(n, val):
for i in range(n+1):
res1 = "-" *(n-i) # putting - instead of space to test
res2 = "#" *val
print(res1 + res2)
val = val+1
# n = n-1
# n = int(input().strip())
n= 5
stair(n, 1)
注意:正如@Anonta所提到的,这段代码是在Python3.x中编写的-您在最后一行中得到了空格字符。但是,不要使用
for
循环-我建议使用while
循环,如下所示:
def stairs(n):
n_spaces = n-1
n_stairs = 1
while n:
print(" "*n_spaces + "#"*n_stairs)
n -= 1
n_spaces -= 1
n_stairs += 1
随后,这在python 2.x中起作用:
import sys
val = 1
def stair(n, val):
for i in range(n+1):
res1 = "_" *n
res2 = "#" *val
print res1 + res2
val = val+1
n = n-1
n = int(raw_input().strip())
stair(n, 1)
Python3.x
import sys
def staircase(n):
for i in range(1,n+1):
print(" "*(n-i)+ "#"*i)
if __name__ == '__main__':
n = 3
staircase(n)
这会有帮助的
n = int(input())
for i in range(1,n+1):
for j in range(n-i):
print(" ",end="")
while i>0:
print("#",end="")
i -=1
print("")
n = int(input())
for i in range(1,n+1):
for j in range(n-i):
print(" ",end="")
while i>0:
print("#",end="")
i -=1
print("")