function canConstruct(str, anotherStr) {
// ASCII frequency table
const freq = new Array(256).fill(0);
// Count characters in anotherStr
for (const ch of anotherStr) {
freq[ch.charCodeAt(0)]++;
}
// Check if str can be constructed
for (const ch of str) {
const code = ch.charCodeAt(0);
freq[code]--;
if (freq[code] < 0) {
return false;
}
}
return true;
}
const str = "hello";
const anotherStr = "olehhlxyz";
console.log(canConstruct(str, anotherStr));
/*
run:
true
*/