1 回答

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
聽(tīng)起來(lái)像“通用字符串”,其中每個(gè)字母字符出現(xiàn)的次數(shù)與字符串中每個(gè)其他字母字符的出現(xiàn)次數(shù)相同。
解決此問(wèn)題的一種方法是制作頻率計(jì)數(shù)器,然后檢查所有值是否相同:
const frequencyCount = a => a.reduce((a, e) => {
a[e] = ++a[e] || 1;
return a;
}, {});
const universalString = s => {
const alpha = [...s.replace(/[^a-z]/gi, "")];
const counts = Object.values(frequencyCount(alpha));
return !counts.length || counts.every(e => e === counts[0]);
};
[
"aabbcchh llkkuudd",
"abbabcbdbabdbdbabababcbcbab",
"aaccbbddffee"
].forEach(e => console.log(e, "=>", universalString(e)));
添加回答
舉報(bào)