Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var players = [];
- var allowedJumps = Number(input[0]);
- var fieldSize = Number(input[1]);
- var winnerFound = false;
- var winner = '';
- input.forEach(function (x) {
- if (isNaN(x)) {
- var player = {};
- var tokens = x.split(', ');
- player['name'] = tokens[0];
- player['jump'] = Number(tokens[1]);
- player['position'] = 0;
- players.push(player);
- }
- });
- while (allowedJumps > 0) {
- players.forEach(function (player) {
- if (!winnerFound) {
- player['position'] += player['jump'];
- if (player['position'] >= fieldSize - 1) {
- winner = player['name'];
- winnerFound = true;
- }
- }
- });
- allowedJumps--;
- }
- if (!winnerFound) {
- var further = -1;
- players.forEach(function (x) {
- if (x['position'] >= further) {
- further = x['position'];
- winner = x['name'];
- }
- });
- }
- var field = '';
- var audiance = new Array(fieldSize + 1).join('#') + '\n' + new Array(fieldSize + 1).join('#') + '\n';
- players.forEach(function(player) {
- field += getLines(player) + '\n';
- });
- function getLines(player) {
- var line = new Array(fieldSize + 1).join('.');
- if(player['position'] >= fieldSize) {
- line = new Array(fieldSize).join('.') + player['name'][0].toUpperCase();
- } else {
- line = line.substr(0, player['position']) + player['name'][0].toUpperCase() + line.substr(player['position'] + 1);
- }
- return line;
- }
- var output = audiance + field + audiance + 'Winner: ' + winner;
- console.log(output);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement