Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve() {
- document.querySelector('#btnSend').addEventListener('click', onClick);
- function onClick () {
- let input = JSON.parse(document.querySelector('#inputs textarea').value);
- let currentAverageSalary = 0;
- let averageSalary = 0;
- let totalSalary = 0;
- let bestRestaurant = '';
- let output = {};
- for (let line of input) {
- let restaurantInfo = line.split(' - ');
- let restaurantName = restaurantInfo.shift();
- let workersData = restaurantInfo[0].split(', ');
- for (let worker of workersData) {
- let [workerName, workerSalary] = worker.split(' ');
- if (!output.hasOwnProperty(restaurantName)) {
- output[restaurantName] = {};
- }
- if (output.hasOwnProperty(restaurantName)) {
- output[restaurantName][workerName] = Number(workerSalary);
- }
- }
- }
- let entries = Object.entries(output);
- for (let entry of entries) {
- let restName = entry[0];
- let values = Object.entries(entry[1]);
- for (let [name, salary] of values) {
- totalSalary += salary;
- }
- averageSalary = totalSalary / values.length;
- if (averageSalary > currentAverageSalary) {
- currentAverageSalary = averageSalary;
- bestRestaurant = restName;
- totalSalary = 0;
- }
- }
- let result = Object.entries(output[bestRestaurant]).sort((a, b) => b[1] - a[1]);
- let print = '';
- result.forEach(w => print += `Name: ${w[0]} With Salary: ${w[1]} `);
- document.querySelector('#bestRestaurant p').textContent = `Name: ${bestRestaurant} Average Salary: ${currentAverageSalary.toFixed(2)} Best Salary: ${(result[0][1]).toFixed(2)}`;
- document.querySelector('#workers p').textContent = print;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement