const findDuplicate = (str) => {
const chars = str.trim().replace(" ", "").split("");
const count = {};
for (let char of chars) {
const normalized = char.toLowerCase();
count[normalized] = (count[normalized] || 0) + 1;
}
const isDuplicate = Object.values(count).some((c) => c === 2);
return isDuplicate ? str : null;
};
console.log(findDuplicate("asdf"));
console.log(findDuplicate("fdas"));
console.log(findDuplicate("asds"));
console.log(findDuplicate("d fm"));
console.log(findDuplicate("dfaa"));
console.log(findDuplicate("aaaa"));
console.log(findDuplicate("aabb"));
console.log(findDuplicate("aaabb"));
Y29uc3QgZmluZER1cGxpY2F0ZSA9IChzdHIpID0+IHsKICBjb25zdCBjaGFycyA9IHN0ci50cmltKCkucmVwbGFjZSgiICIsICIiKS5zcGxpdCgiIik7CiAgY29uc3QgY291bnQgPSB7fTsKCiAgZm9yIChsZXQgY2hhciBvZiBjaGFycykgewogICAgY29uc3Qgbm9ybWFsaXplZCA9IGNoYXIudG9Mb3dlckNhc2UoKTsKCiAgICBjb3VudFtub3JtYWxpemVkXSA9IChjb3VudFtub3JtYWxpemVkXSB8fCAwKSArIDE7CiAgfQoKICBjb25zdCBpc0R1cGxpY2F0ZSA9IE9iamVjdC52YWx1ZXMoY291bnQpLnNvbWUoKGMpID0+IGMgPT09IDIpOwoKICByZXR1cm4gaXNEdXBsaWNhdGUgPyBzdHIgOiBudWxsOwp9OwoKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiYXNkZiIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiZmRhcyIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiYXNkcyIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiZCBmbSIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiZGZhYSIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiYWFhYSIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiYWFiYiIpKTsKY29uc29sZS5sb2coZmluZER1cGxpY2F0ZSgiYWFhYmIiKSk7Cg==