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 inputArray = input.trim().split('\n'); 11 let s = inputArray[0]; 12 let t = inputArray[1]; 13 14 /** 15 * 判断t是否是s的字母异位词的函数 16 */ 17 function doFunc(s, t) { 18 // 如果两个字符串长度不同,则它们不可能是字母异位词 19 if (s.length !== t.length) { 20 return 'FALSE'; 21 } 22 23 // 创建一个对象来存储字母的频率 24 let charCount = {}; 25 26 // 遍历字符串s,记录每个字母的频率 27 for (let char of s) { 28 if (charCount[char]) { 29 charCount[char]++; 30 } else { 31 charCount[char] = 1; 32 } 33 } 34 35 // 遍历字符串t,减少对应字母的频率 36 for (let char of t) { 37 if (charCount[char]) { 38 charCount[char]--; 39 } else { 40 // 如果在t中遇到了s中没有的字母,则它们不是字母异位词 41 return 'FALSE'; 42 } 43 } 44 45 // 检查所有字母的频率是否都为零 46 for (let count of Object.values(charCount)) { 47 if (count !== 0) { 48 return 'FALSE'; 49 } 50 } 51 52 // 如果所有检查都通过,则它们是字母异位词 53 return 'TRUE'; 54 } 55 56 // 调用函数并输出结果 57 console.log(doFunc(s, t)); 58 59 process.exit(); 60});
Copyright ©2010-2022 比特日记 All Rights Reserved.
Powered By 可尔物语