Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve(input) {
- let participants = input.shift().split(', ')
- let line = input.shift();
- let partsObj = {}
- while (line !== 'end of race') {
- let patternName = /\d+|@|&|#|\$|%|!|\^/g;
- let name = line.replace(patternName, "")
- let patternDistance = /[A-Za-z]+|@|&|#|\$|%|!|\^/g;
- let distance = line.replace(patternDistance, "")
- let distanceSum = 0;
- for (let i = 0; i < distance.length; i++) {
- let digit = Number(distance[i])
- distanceSum += digit;
- }
- if (participants.includes(name)){
- if (!partsObj.hasOwnProperty(name)) {
- partsObj[name] = distanceSum
- } else {
- partsObj[name] += distanceSum
- }
- }
- line = input.shift();
- }
- let partsArr = []
- for (let partName in partsObj) {
- partsArr.push([partName, partsObj[partName]])
- }
- partsArr.sort((a,b)=>b[1]-a[1])
- console.log(`1st place: ${partsArr[0][0]}`);
- console.log(`2nd place: ${partsArr[1][0]}`);
- console.log(`3rd place: ${partsArr[2][0]}`);
- }
- // solve([
- // 'George, Peter, Bill, Tom',
- // 'G4e@55or%6g6!68e!!@',
- // 'R1@!3a$y4456@',
- // 'B5@i@#123ll',
- // 'G@e54o$r6ge#',
- // '7P%et^#e5346r',
- // 'T$o553m&6',
- // 'end of race'
- // ]
- // )
- // 1st place: George
- // 2nd place: Peter
- // 3rd place: Tom
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement