我想在 go 的 hackerrank 中解决这个挑战。当我运行它时,我得到了与挑战想要的相同的结果,但他们不接受我的答案。 这是挑战链接: https://www.hackerrank.com/challenges/staircase/problem?isfullscreen=true
这是我的代码:
func staircase(n int32) { var i int32 for i = 0; i < n; i++ { fmt.Println(strings.Repeat(" ", int(n-i)), strings.Repeat("#", int(i))) } }
首先,第一行必须有一个 #
标志,最后一行必须有 n
#
标志。因此,将循环从 1
更改为 n
包含。
接下来,fmt.println()
打印参数之间的空格,这将“扭曲”输出。连接 2 个字符串,或使用 fmt.print()
(不在字符串参数之间添加空格),或使用 fmt.printf("%s%sn", text1, text2)
。
例如:
func staircase(n int32) { for i := int32(1); i <= n; i++ { fmt.println(strings.repeat(" ", int(n-i)) + strings.repeat("#", int(i))) } }
使用 staircase(4)
进行测试,输出将是(在 go playground a>):
# ## ### ####