删除回文子序列

删除回文子序列

 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});
process.stdin.resume(); process.stdin.setEncoding('utf-8'); let input = ''; process.stdin.on('data', (data) => { input += data; }); process.stdin.on('end', () => { let s = input.trim(); /** * 检查字符串是否是回文的函数 */ function isPalindrome(str) { return str === str.split('').reverse().join(''); } /** * 确定最小删除次数的函数 */ function determineMinDeletions(str) { // 如果字符串是回文,或者只包含一种字符('a'或'b'),则只需一次删除 if (isPalindrome(str) || /^[a]+$/.test(str) || /^[b]+$/.test(str)) { return 1; } else { // 否则,需要至少两次删除操作 return 2; } } // 调用函数并输出结果 console.log(determineMinDeletions(s)); process.exit(); });

Powered By 可尔物语

浙ICP备11005866号-12