JSFiddle - React, Tailwind, and code Playground
by BDG
HTML
<button id="run" >- Run -</button>
<br/>
<textarea id="input" rows=15 cols=25>5
15 10 658931394179
92 37 304080438521
39 100 972826846685
24 89 306549054135
64 16 254854449271</textarea>
<textarea id="output" rows=15 cols=25></textarea>
<pre id="debug"></pre>
CSS
textarea {
float: left;
margin-right: 10px;
overflow: auto;
}
JavaScript
//Main logic to find an awesome.
// 1<=g<=100 :: cost to build shield generator
// 1<=w<=100 :: cost to build warrior
// G+W <= M <=10^12 :: total money
// g = time
// w = damage
function awesome(g, w, m) {
//m = g*n1 + w*n2
var n1 = (m-w*n2)/g;
var n2 = (m-g*n1)/w;
return g+w+m;
}
/*
*Parse each line
*/
function base(rows, data){
for (i=0;i<rows;i++) {
var temp = data[i].split(" ");
var g = temp[0];
var w = temp[1];
var m = temp[2];
out(awesome(g, w, m));
}
}
/**
Below are maintenance functions
**/
function main(input){
input = input.replace("\r", "");
var data = input.split("\n");
var items = data.shift();
base(items, data);
}
function out(txt){
$("#output").append(txt + "\n");
}
function deb(txt){
$("#debug").append(txt + "\n");
}
$("#run").click(function () {
main($("#input").val());
});