gpt4 book ai didi

javascript - console.log 最后一行的额外空格打印

转载 作者:行者123 更新时间:2023-11-28 17:00:53 25 4
gpt4 key购买 nike

其中一个名为 Staircase 的 Hackerrank 问题想要编写一个函数,该函数接受一个整数并打印 # 符号作为楼梯,并且最后一行不得有任何空格。所以这是我的定义:

function staircase(n) {
let hash = '#';
for(let i=1; i <= n; i++){
console.log(hash.repeat(i));
}
}

staircase(6);

Hackerrank 中的输出是:(我故意手动添加行号)

1 #
2 ##
3 ###
4 ####
5 #####
6 ######
7

这是 Not Acceptable ,因为最后一行 (7) 正在打印额外的空格。问题是为什么会发生这种情况? console.log() 是否会添加额外的空间?解决办法是什么?

可运行片段:

function staircase(n) {
let hash = '#';
for(let i=1; i <= n; i++){
console.log(hash.repeat(i));
}
}

staircase(6);

编辑:此代码在控制台中没有问题,仅在 Hackerrank 测试中发生。

最佳答案

楼梯拼图有点误导,输出不显示前导空格。
您实际上应该右对齐楼梯,例如:

     #
##
###
####
#####
######

(查看任务的描述,输出正确缩进)

所以像这样的东西应该有效:

function staircase(n) {
for (let i = 1; i <= n; i++)
console.log(' '.repeat(n-i) + '#'.repeat(i));
}

关于javascript - console.log 最后一行的额外空格打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57529105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com