Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve(input) {
- var sum = 0;
- var maxSum = Number.MIN_VALUE-1;
- var finalValueOne = '';
- var finalValueTwo = '';
- var finalValueThree = '';
- var output = '';
- var finalValues = [];
- var arr = [];
- for (var i = 2; i < input.length-1; i++) {
- var strRow = input[i].split(/<(\w+)>([\W\w]+)<\/\w+>/g).filter(Boolean);
- var arr = strRow[1].split(/<(\w+)>([\W\w]+)<\/\w+>/g).filter(Boolean);
- var newArr = arr[1].split(/<(\w+)>([\W\w]+)<\/\w+>/g).filter(String);
- var values = newArr.splice(2);
- var newValues = values[0].split(/<\/\w+><(\w+)>/g);
- var newValues2 = values[1].split(/<(\w+)>/g).filter(Boolean);
- var valueOne = newValues[0];
- var valueTwo = newValues[2];
- var valueThree = newValues2[1];
- var v1 = parseFloat(valueOne);
- var v2 = parseFloat(valueTwo);
- var v3 = parseFloat(valueThree);
- if (isNaN(v1)) {
- v1 = 0;
- }
- if (isNaN(v2)) {
- v2= 0;
- }
- if (isNaN(v3)) {
- v3 = 0;
- }
- sum = v1 + v2 + v3;
- if (sum > maxSum) {
- maxSum = sum;
- finalValueOne = valueOne;
- finalValueTwo = valueTwo;
- finalValueThree = valueThree;
- }
- }
- finalValues.push(finalValueOne);
- finalValues.push(finalValueTwo);
- finalValues.push(finalValueThree);
- var final = [];
- for (var i = 0; i < finalValues.length; i++) {
- if (finalValues[i] !== '-') {
- final.push(finalValues[i]);
- }
- }
- //output
- final.join(' + ');
- if (final.length === 0) {
- output = 'no data';
- } else {
- var result = final.join(' + ');
- output = maxSum + ' = '+ final.join(' + ');
- }
- return output;
- }
- console.log(solve(['<table>',
- '<tr><th>Town</th><th>Store1</th><th>Store2</th><th>Store3</th></tr>',
- '<tr><td>Sofia</td><td>26.2</td><td>8.20</td><td>-</td></tr>',
- '<tr><td>Varna</td><td>11.2</td><td>18.00</td><td>36.10</td></tr>',
- '<tr><td>Plovdiv</td><td>17.2</td><td>12.3</td><td>6.4</td></tr>',
- '<tr><td>Bourgas</td><td>-</td><td>24.3</td><td>-</td></tr>',
- '</table>']))
- console.log(solve(['<table>',
- '<tr><th>Town</th><th>Store1</th><th>Store2</th><th>Store3</th></tr>',
- '<tr><td>Sofia</td><td>-</td><td>-</td><td>-</td></tr>',
- '</table>'
- ]))
- console.log(solve(['<table>',
- '<tr><th>Town</th><th>Store1</th><th>Store2</th><th>Store3</th></tr>',
- '<tr><td>Sofia</td><td>12850</td><td>-560</td><td>20833</td></tr>',
- '<tr><td>Rousse</td><td>-</td><td>50000.0</td><td>-</td></tr>',
- '<tr><td>Bourgas</td><td>25000</td><td>25000</td><td>-</td></tr>',
- '</table>'
- ]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement