没什么难的,最重要就是理解题意,然后按题目步骤做就行了(这个题目的文字很别扭,看了好多遍才看懂……)
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () => (await iter.next()).value; void async function () { // Write your code here let s = await readline() let t = await readline() // 1. 去重 const newAlphabet = [...new Set([...s])] // 2. 填充得到新字母表 const originalAlphabet = [...'abcdefghijklmnopqrstuvwxyz'] originalAlphabet.forEach((x, i) => { const hasLetter = newAlphabet.some(y => y === x) if (!hasLetter) newAlphabet.push(x) }) // 3. 对t处理,在originalAlphabet找到下标,通过下标找到newAlphabet中对应的字母然后替换 let targetStrArr = [...t] let resArr = [] targetStrArr.forEach(x => { const index = originalAlphabet.indexOf(x) resArr.push(newAlphabet[index]) }) console.log(resArr.join('')); }()