35 lines
820 B
TypeScript
35 lines
820 B
TypeScript
// Sources used: https://stackoverflow.com/a/32599033
|
|
import { createReadStream } from "fs";
|
|
import { createInterface } from "readline";
|
|
import { visualizeValues } from "./src/visualizeValues";
|
|
|
|
async function parseInputFile(): Promise<number[]> {
|
|
const fileStream = createReadStream("./result.cnf");
|
|
const rl = createInterface({
|
|
input: fileStream,
|
|
crlfDelay: Infinity,
|
|
});
|
|
|
|
const result: number[] = [];
|
|
|
|
for await (const line of rl) {
|
|
if (!line.startsWith("v")) continue;
|
|
const values = line.split(" ").slice(1).map(Number);
|
|
|
|
for (const value of values) {
|
|
if (value <= 0) continue;
|
|
result.push(value);
|
|
}
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
async function main(): Promise<void> {
|
|
const values = await parseInputFile();
|
|
console.log("Result:");
|
|
visualizeValues(values);
|
|
}
|
|
|
|
main();
|