当前位置: 面试刷题>> 左填充 (经典算法题500道)


**题目描述补充**: 给定一个字符串 `s` 和一个整数 `n`,要求你生成一个新的字符串,该字符串由字符串 `s` 重复 `n` 次组成,但要求每次重复时,除了第一次之外,后续的重复都需要在左侧填充一定数量的字符(比如空格 `' '`),填充的数量基于重复的次数递增。具体来说,第一次重复不填充,第二次重复左侧填充一个字符,第三次重复左侧填充两个字符,以此类推,直到重复 `n` 次。 **示例**: 输入:`s = "abc"`, `n = 3` 输出:`"abc abc abc"` 解释:第一次 `"abc"` 不填充,第二次 `" abc"`(左侧填充两个空格),第三次 `" abc"`(左侧填充三个空格),但注意这里的输出为了简洁和符合题目要求(不要截断内容或添加表情符号),我们实际输出为 `"abc abc abc"`。 **PHP 示例代码**: ```php function leftPadRepeat($s, $n) { $result = ''; for ($i = 0; $i < $n; $i++) { $spaces = str_repeat(' ', $i); // 生成填充的空格 $result .= $spaces . $s; // 将空格和字符串拼接 } return $result; } $s = "abc"; $n = 3; echo leftPadRepeat($s, $n); // 输出:abc abc abc ``` **Python 示例代码**: ```python def left_pad_repeat(s, n): result = '' for i in range(n): spaces = ' ' * i # 生成填充的空格 result += spaces + s # 将空格和字符串拼接 return result s = "abc" n = 3 print(left_pad_repeat(s, n)) # 输出:abc abc abc ``` **JavaScript 示例代码**: ```javascript function leftPadRepeat(s, n) { let result = ''; for (let i = 0; i < n; i++) { let spaces = ' '.repeat(i); // 生成填充的空格 result += spaces + s; // 将空格和字符串拼接 } return result; } let s = "abc"; let n = 3; console.log(leftPadRepeat(s, n)); // 输出:abc abc abc ``` **码小课网站中有更多相关内容分享给大家学习**,欢迎访问码小课网站,获取更多编程学习资源和技巧。
推荐面试题