Fixed formatting problems
This commit is contained in:
@@ -1,20 +1,19 @@
|
|||||||
// You pass an array in, and it gets converted to a set.
|
// You pass an array in, and it gets converted to a set.
|
||||||
let statesNeeded = new Set(['mt', 'wa', 'or', 'id', 'nv', 'ut', 'ca', 'az']);
|
let statesNeeded = new Set(["mt", "wa", "or", "id", "nv", "ut", "ca", "az"]);
|
||||||
|
|
||||||
const stations = {};
|
const stations = {};
|
||||||
stations.kone = new Set(['id', 'nv', 'ut']);
|
stations.kone = new Set(["id", "nv", "ut"]);
|
||||||
stations.ktwo = new Set(['wa', 'id', 'mt']);
|
stations.ktwo = new Set(["wa", "id", "mt"]);
|
||||||
stations.kthree = new Set(['or', 'nv', 'ca']);
|
stations.kthree = new Set(["or", "nv", "ca"]);
|
||||||
stations.kfour = new Set(['nv', 'ut']);
|
stations.kfour = new Set(["nv", "ut"]);
|
||||||
stations.kfive = new Set(['ca', 'az']);
|
stations.kfive = new Set(["ca", "az"]);
|
||||||
|
|
||||||
const finalStations = new Set();
|
const finalStations = new Set();
|
||||||
|
|
||||||
|
|
||||||
while (statesNeeded.size) {
|
while (statesNeeded.size) {
|
||||||
let bestStation = null;
|
let bestStation = null;
|
||||||
let statesCovered = new Set();
|
let statesCovered = new Set();
|
||||||
Object.keys(stations).forEach((station) => {
|
Object.keys(stations).forEach(station => {
|
||||||
const states = stations[station];
|
const states = stations[station];
|
||||||
const covered = new Set([...statesNeeded].filter(x => states.has(x)));
|
const covered = new Set([...statesNeeded].filter(x => states.has(x)));
|
||||||
if (covered.size > statesCovered.size) {
|
if (covered.size > statesCovered.size) {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use strict';
|
"use strict";
|
||||||
|
|
||||||
// You pass an array in, and it gets converted to a set.
|
// You pass an array in, and it gets converted to a set.
|
||||||
let states_needed = new Set(["mt", "wa", "or", "id", "nv", "ut", "ca", "az"]);
|
let statesNeeded = new Set(["mt", "wa", "or", "id", "nv", "ut", "ca", "az"]);
|
||||||
|
|
||||||
const stations = {};
|
const stations = {};
|
||||||
stations["kone"] = new Set(["id", "nv", "ut"]);
|
stations["kone"] = new Set(["id", "nv", "ut"]);
|
||||||
@@ -10,22 +10,21 @@ stations["kthree"] = new Set(["or", "nv", "ca"]);
|
|||||||
stations["kfour"] = new Set(["nv", "ut"]);
|
stations["kfour"] = new Set(["nv", "ut"]);
|
||||||
stations["kfive"] = new Set(["ca", "az"]);
|
stations["kfive"] = new Set(["ca", "az"]);
|
||||||
|
|
||||||
const final_stations = new Set();
|
const finalStations = new Set();
|
||||||
|
|
||||||
|
while (statesNeeded.size) {
|
||||||
while (states_needed.size) {
|
let bestStation = null;
|
||||||
let best_station = null;
|
let statesCovered = new Set();
|
||||||
let states_covered = new Set();
|
|
||||||
for (let station in stations) {
|
for (let station in stations) {
|
||||||
let states = stations[station];
|
const states = stations[station];
|
||||||
let covered = new Set([...states_needed].filter((x) => states.has(x)));
|
const covered = new Set([...statesNeeded].filter(x => states.has(x)));
|
||||||
if (covered.size > states_covered.size) {
|
if (covered.size > statesCovered.size) {
|
||||||
best_station = station;
|
bestStation = station;
|
||||||
states_covered = covered;
|
statesCovered = covered;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
states_needed = new Set([...states_needed].filter((x) => !states_covered.has(x)));
|
statesNeeded = new Set([...statesNeeded].filter(x => !statesCovered.has(x)));
|
||||||
final_stations.add(best_station);
|
finalStations.add(bestStation);
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(final_stations); // Set { 'kone', 'ktwo', 'kthree', 'kfive' }
|
console.log(finalStations); // Set { 'kone', 'ktwo', 'kthree', 'kfive' }
|
||||||
|
|||||||
Reference in New Issue
Block a user