Skip to content

Instantly share code, notes, and snippets.

@OAyomide
Last active February 7, 2020 12:09
Show Gist options
  • Select an option

  • Save OAyomide/5b1246bb0bd79519ee99bf1ef38b9d3b to your computer and use it in GitHub Desktop.

Select an option

Save OAyomide/5b1246bb0bd79519ee99bf1ef38b9d3b to your computer and use it in GitHub Desktop.
Solution to testRigor AI test
const criminals = new Map();
criminals.set("Paul White", "Roger Night, Peter Llong Jr.");
criminals.set("Roger Fedexer", "Rob Ford, Pete Lord, Roger McWire");
criminals.set("Paul White Jr.", null);
criminals.set("Red Fortress", "Roger Rabbit, Ross Winter");
criminals.set("Redford Fort", "Red Strong, Red Fort");
function getCriminal(input) {
const names = [...criminals.keys()]
const aliases = [...criminals.values()]
const inputRegex = new RegExp(input, 'gi')
let nameMatch, aliasesMatch
nameMatch = names.find(n => inputRegex.test(n))
if (!nameMatch) {
aliasesMatch = aliases.find(n => inputRegex.test(n))
}
if (nameMatch) {
const aliases = criminals.get(nameMatch)
return `First name: ${nameMatch}. Aliases: ${aliases}`
} else if (aliasesMatch) {
for (let [key, value] of criminals) {
if (value === aliasesMatch) {
return `First name: ${key}. Aliases: ${aliasesMatch}`
}
}
} else {
return `No match`
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment