Plataforma: URI (BEECROWD)
Problema: 2551
Enunciado:
A grande Maratona de Rua de Curitiba irá ocorrer nos próximos dias! Vários atletas estão treinando há dias para o grande dia da corrida. Flávio é um dos atletas que está treinando diariamente para se sair bem na corrida. Ele tem corrido todas as manhãs nas pistas próximas de sua casa.
Os treinos do garoto são monitorados por um aplicativo em seu celular. Após cada treino, Flávio sabe tanto a duração do treino quanto a distância total percorrida. Com essas informações, ele consegue determinar a velocidade média obtida em cada treino.
Flávio está muito preocupado com a evolução de seu desempenho nos treinos, e em particular com seu recorde de velocidade média. Tal recorde é batido em um dado treino quando a velocidade média para este treino é maior que todas as velocidades médias obtidas nos treinos anteriores. Ajude Flávio a determinar em quais treinos ele conseguiu bater seu recorde.
Linguagens: C e C++
Solução:
Código em C:
#include <stdio.h> int main() { int n, t, d, i; double media; while (scanf("%d", &n) != EOF) { media = -1.0; i = 0; while (i++ < n) { scanf("%d %d", &t, &d); if ((double) d/t > media) { printf("%d\n", i); media = (double) d/t; } } } return 0; }
#include <iostream> using namespace std; int main() { int n, t, d, i; double media; while (cin >> n) { media = -1.0; i = 0; while (i++ < n) { cin >> t >> d; if ((double) d/t > media) { cout << i << endl; media = (double) d/t; } } } return 0; }