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