georgiev955

Cinema Tickets

Feb 12th, 2023
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve(input) {
  2.   let movieName = input.shift();
  3.   let seatsForMovie = input.shift();
  4.   let type = input.shift();
  5.   let standardTicket = 0;
  6.   let studentTicket = 0;
  7.   let kidTicket = 0;
  8.   let totalStandardTickets = 0;
  9.   let totalStudentTickets = 0;
  10.   let totalKidTickets = 0;
  11.   while (type !== "finish") {
  12.     let seatsTaken = 0;
  13.     while ((type === "standard" || type === "kid" || type === "student") && seatsTaken < seatsForMovie) {
  14.       if (type === "standard") {
  15.         standardTicket++;
  16.         seatsTaken++;
  17.       } else if (type === "kid") {
  18.         kidTicket++;
  19.         seatsTaken++;
  20.       } else {
  21.         studentTicket++;
  22.         seatsTaken++;
  23.       }
  24.       type = input.shift();
  25.       if (type !== "standard" && type !== "kid" && type !== "student") {
  26.         console.log(
  27.           `${movieName} - ${(
  28.             ((standardTicket + kidTicket + studentTicket) / seatsForMovie) *
  29.             100
  30.           ).toFixed(2)}% full.`
  31.         );
  32.         totalKidTickets += kidTicket;
  33.         totalStandardTickets += standardTicket;
  34.         totalStudentTickets += studentTicket;
  35.         standardTicket = 0;
  36.         kidTicket = 0;
  37.         studentTicket = 0;
  38.         seatsTaken = 0;
  39.         break;
  40.       }
  41.     }
  42.     if (type === "Finish") {
  43.       break;
  44.     }
  45.     if (type === "End") {
  46.       movieName = input.shift();
  47.       seatsForMovie = Number(input.shift());
  48.       type = input.shift();
  49.     } else {
  50.       movieName = type;
  51.       seatsForMovie = input.shift();
  52.       type = input.shift();
  53.     }
  54.   }
  55.   let totalTickets =
  56.     totalStandardTickets + totalKidTickets + totalStudentTickets;
  57.   console.log(`Total tickets: ${totalTickets}`);
  58.   console.log(
  59.     `${((totalStudentTickets / totalTickets) * 100).toFixed(
  60.       2
  61.     )}% student tickets.`
  62.   );
  63.   console.log(
  64.     `${((totalStandardTickets / totalTickets) * 100).toFixed(
  65.       2
  66.     )}% standard tickets.`
  67.   );
  68.   console.log(
  69.     `${((totalKidTickets / totalTickets) * 100).toFixed(2)}% kids tickets.`
  70.   );
  71. }
Advertisement
Add Comment
Please, Sign In to add comment