Para resolver o problema, utilizaremos uma \textbf{fila de prioridade (min-heap)} que armazenará os instantes em que cada medicamento deve ser tomado novamente, juntamente com o nome do medicamento. Dessa forma, sempre poderemos determinar facilmente qual é o próximo medicamento a ser administrado. Inicialmente, inserimos na fila todos os medicamentos com o tempo de sua \textit{primeira dose}. Em seguida, repetimos o seguinte processo até listar todas as doses necessárias: \begin{enumerate} \item Remover da fila o medicamento com o menor tempo de administração (isto é, o que deve ser tomado mais cedo). \item Imprimir o nome do medicamento e o tempo. \item Calcular o próximo instante em que esse medicamento deverá ser tomado, somando o seu intervalo de tempo ao instante atual. \item Inserir novamente o medicamento na fila com o novo instante calculado. \end{enumerate} Esse método garante que os medicamentos sejam listados em ordem cronológica, respeitando os intervalos de cada um e evitando que qualquer dose seja esquecida.