Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for [old] Compass, Map and Spyglass by Moff
function navigation(seaside) {
let cells = {};
seaside.forEach((row, r) => {
row.forEach((cell, c) => {
if (cell !== 0)
cells[cell] = [r, c];
});
});
function dist(source, target) {
let [r1, c1] = cells[source];
let [r2, c2] = cells[target];
return Math.max(Math.abs(r1 - r2), Math.abs(c1 - c2));
}
return dist('Y', 'C') + dist('Y', 'M') + dist('Y', 'S');
}
Oct. 4, 2018