function matchesPattern(pattern: string, sentence: string): boolean {
const words: string[] = sentence.trim().split(/\s+/);
// Length mismatch → automatic failure
if (pattern.length !== words.length) {
return false;
}
// Compare each pattern character to the first letter of each word
for (let i: number = 0; i < pattern.length; i++) {
const p: string = pattern[i].toLowerCase();
const w: string = words[i][0].toLowerCase();
if (p !== w) {
return false;
}
}
return true;
}
function main(): void {
const pattern = "jpcrg";
const sentence = "java python c rust go";
if (matchesPattern(pattern, sentence)) {
console.log("Pattern matches!");
} else {
console.log("Pattern does NOT match.");
}
}
main();
/*
run:
"Pattern matches!"
*/