Escrito por estudiantes que aprobaron Inmediatamente disponible después del pago Leer en línea o como PDF ¿Documento equivocado? Cámbialo gratis 4,6 TrustPilot
logo-home
Otro

COS assignment 1

Puntuación
-
Vendido
5
Páginas
10
Subido en
03-05-2025
Escrito en
2024/2025

COS assignment 1 change what you need to change

Institución
Grado

Vista previa del contenido

2025 COS2611 ASSIGNMENT 1
SOLUTION
#include <iostream>
#include <fstream>
#include <queue>
#include <string>
#include <vector>
#include <iomanip>
#include <sstream>

using namespace std;
// Passenger structure
struct Passenger {
char destination; // 'S', 'L', or 'C'
int id; // Passenger ID (e.g., 1, 2, 3...)
int boardingTime; // Time required to board
int remainingTime; // Remaining boarding time
int arrivalTime; // Time when the passenger arrived

Passenger(char dest, int passId, int boarding, int arrival) :
destination(dest), id(passId), boardingTime(boarding),
remainingTime(boarding), arrivalTime(arrival) {}
};

// Structure to keep track of taxi state
struct TaxiState {
int capacity; // Current number of passengers (max 5)
Passenger* boardingPassenger; // Pointer to the currently boarding passenger

TaxiState() : capacity(5), boardingPassenger(nullptr) {}
};

// Structure to maintain passenger counters for each type
struct PassengerCounters {
int sCount;
int lCount;
int cCount;

PassengerCounters() : sCount(0), lCount(0), cCount(0) {}
};

, // Parse a line from the input file
bool parseInputLine(const string& line, int& timeCount, char& route, int& boardingTime) {
stringstream ss(line);
string item;

// Parse time count
if (!getline(ss, item, ',')) return false;
timeCount = stoi(item);

// Parse route
if (!getline(ss, item, ',')) return false;
route = item[0];

// Parse boarding time
if (!getline(ss, item)) return false;
boardingTime = stoi(item);

return true;
}

// Print the table header
void printTableHeader() {
cout << "+------+------+-------+-------+-------+-------+-------+-------+-------+-------+-------+" << endl;
cout << "| T | next | S | L | C | WQS | WQL | WQC | CS | CL | CC |" << endl;
cout << "+------+------+-------+-------+-------+-------+-------+-------+-------+-------+-------+" << endl;
}

// Get string representation of a passenger
string passengerToString(const Passenger* p) {
if (!p) return "-";
stringstream ss;
ss << p->destination << p->id << "(" << p->remainingTime << ")";
return ss.str();
}

// Print a row in the table
void printTableRow(int time, char nextPassenger,
Passenger* queueS,
Passenger* queueL,
Passenger* queueC,
queue<Passenger*>& waitingQS,
queue<Passenger*>& waitingQL,
queue<Passenger*>& waitingQC,
const TaxiState& taxiS,

Escuela, estudio y materia

Institución
Grado

Información del documento

Subido en
3 de mayo de 2025
Número de páginas
10
Escrito en
2024/2025
Tipo
OTRO
Personaje
Desconocido

Temas

$5.37
Accede al documento completo:

¿Documento equivocado? Cámbialo gratis Dentro de los 14 días posteriores a la compra y antes de descargarlo, puedes elegir otro documento. Puedes gastar el importe de nuevo.
Escrito por estudiantes que aprobaron
Inmediatamente disponible después del pago
Leer en línea o como PDF

Conoce al vendedor

Seller avatar
Los indicadores de reputación están sujetos a la cantidad de artículos vendidos por una tarifa y las reseñas que ha recibido por esos documentos. Hay tres niveles: Bronce, Plata y Oro. Cuanto mayor reputación, más podrás confiar en la calidad del trabajo del vendedor.
foxNotes Acsess Business Academy
Seguir Necesitas iniciar sesión para seguir a otros usuarios o asignaturas
Vendido
113
Miembro desde
3 año
Número de seguidores
63
Documentos
36
Última venta
3 semanas hace
saveNotes

5.0

5 reseñas

5
5
4
0
3
0
2
0
1
0

Documentos populares

Recientemente visto por ti

Por qué los estudiantes eligen Stuvia

Creado por compañeros estudiantes, verificado por reseñas

Calidad en la que puedes confiar: escrito por estudiantes que aprobaron y evaluado por otros que han usado estos resúmenes.

¿No estás satisfecho? Elige otro documento

¡No te preocupes! Puedes elegir directamente otro documento que se ajuste mejor a lo que buscas.

Paga como quieras, empieza a estudiar al instante

Sin suscripción, sin compromisos. Paga como estés acostumbrado con tarjeta de crédito y descarga tu documento PDF inmediatamente.

Student with book image

“Comprado, descargado y aprobado. Así de fácil puede ser.”

Alisha Student

Preguntas frecuentes