d5p2 = {
const orders = pages[0];
const updates = pages[1];
const pageSorting = [...new Set(orders.map((e) => e[0]))].map((e) => ({
before: e,
after: orders.filter((f) => f[0] == e).map((g) => g[1])
}));
return updates.map((u) => {
let correct = [];
let running = true;
let i = 0;
while(running){
let d = u[i];
let rule = pageSorting.find((g) => g.before == d);
if(correct.length == u.length){
running=false
}
}
return {
correct,
incorrect,
pass: u.every((d, i, a) => {
let rule = pageSorting.find((g) => g.before == d);
return a.slice(i + 1).every((b) => rule.after.includes(b));
})
};
});
}