@@ -298,33 +298,50 @@ int main()
298298```javascript
299299// JS中字符串内不可单独修改
300300
301- // 右旋转
302- function reverseLeftWords(s, k) {
303- const reverse = (sList, start, end) => {
304- for (let i = start, j = end; i < j; i++, j--) {
305- [sList[i], sList[j]] = [sList[j], sList[i]];
306- }
307- }
308- const sList = Array.from(s);
309- reverse(sList, 0, sList.length - k - 1);
310- reverse(sList, sList.length - k, sList.length - 1);
311- reverse(sList, 0, sList.length - 1);
312- return sList.join('');
301+ const readline = require('readline')
302+
303+ const rl = readline.createInterface({
304+ input: process.stdin,
305+ output: process.stdout
306+ })
307+
308+ const inputs = []; // 存储输入
309+
310+ rl.on('line', function(data) {
311+ inputs.push(data);
312+
313+ }).on('close', function() {
314+ const res = deal(inputs);
315+ // 打印结果
316+ console.log(res);
317+ })
318+
319+ // 对传入的数据进行处理
320+ function deal(inputs) {
321+ let [k, s] = inputs;
322+ const len = s.length - 1;
323+ k = parseInt(k);
324+ str = s.split('');
325+
326+ str = reverseStr(str, 0, len - k)
327+ str = reverseStr(str, len - k + 1, len)
328+ str = reverseStr(str, 0, len)
329+
330+ return str.join('');
313331}
314332
315- // 左旋转
316- var reverseLeftWords = function(s, n) {
317- const reverse = (sList, start, end) => {
318- for (let i = start, j = end; i < j; i++, j--) {
319- [sList[i], sList[j]] = [sList[j], sList[i]];
333+ // 根据提供的范围进行翻转
334+ function reverseStr(s, start, end) {
335+
336+ while (start < end) {
337+ [s[start], s[end]] = [s[end], s[start]]
338+
339+ start++;
340+ end--;
320341 }
321- }
322- const sList = s.split('');
323- reverse(sList, 0, n - 1);
324- reverse(sList, n, sList.length - 1);
325- reverse(sList, 0, sList.length - 1);
326- return sList.join('');
327- };
342+
343+ return s;
344+ }
328345```
329346
330347### TypeScript:
0 commit comments