1process.stdin.resume(); 2process.stdin.setEncoding('utf-8'); 3let input = ''; 4 5process.stdin.on('data', (data) => { 6 input += data; 7}); 8 9process.stdin.on('end', () => { 10 let s = input.trim(); 11 12 /** 13 * 检查字符串是否是回文的函数 14 */ 15 function isPalindrome(str) { 16 return str === str.split('').reverse().join(''); 17 } 18 19 /** 20 * 确定最小删除次数的函数 21 */ 22 function determineMinDeletions(str) { 23 // 如果字符串是回文,或者只包含一种字符('a'或'b'),则只需一次删除 24 if (isPalindrome(str) || /^[a]+$/.test(str) || /^[b]+$/.test(str)) { 25 return 1; 26 } else { 27 // 否则,需要至少两次删除操作 28 return 2; 29 } 30 } 31 32 // 调用函数并输出结果 33 console.log(determineMinDeletions(s)); 34 process.exit(); 35});
Copyright ©2010-2022 比特日记 All Rights Reserved.
Powered By 可尔物语