25 lines
796 B
JavaScript
25 lines
796 B
JavaScript
|
var input = require("fs").readFileSync("input.txt").toString().replace(/\r/g, "");
|
||
|
var devices = input.split("\n").filter((line)=>(line.indexOf("/dev/") != -1)).map((line)=>(line.match(/\/dev\/grid\/node-x([0-9]+)-y([0-9]+)[ ]+([0-9]+)T[ ]+([0-9]+)T[ ]+([0-9]+)T[ ]+([0-9]+)%/))).map((match)=>({
|
||
|
x: parseInt(match[1]),
|
||
|
y: parseInt(match[2]),
|
||
|
size: parseInt(match[3]),
|
||
|
used: parseInt(match[4]),
|
||
|
available: parseInt(match[5]),
|
||
|
percentageUsed: parseInt(match[5]),
|
||
|
}));
|
||
|
|
||
|
console.log(devices);
|
||
|
var pairs = [];
|
||
|
for(var dev1 = 0; dev1 < devices.length; dev1++){
|
||
|
for(var dev2 = 0; dev2 < devices.length; dev2++){
|
||
|
if(dev1 != dev2){
|
||
|
if(devices[dev1].used > 0){
|
||
|
if(devices[dev2].available >= devices[dev1].used){
|
||
|
pairs.push([dev1, dev2]);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
console.log(pairs.length);
|