A Federação de Corridas de Charrete (FCC) organiza todo ano a Subida Brigite Cardoso (SBC), disputada nas ladeiras de paralelepípedo de Ouro Preto. A corrida é uma das mais tradicionais do esporte, completando 100 anos em 2013. Para comemorar o centenário, a FCC pretende integrar dispositivos GPS às charretes, permitindo aos espectadores desfrutarem de dados de telemetria em tempo real.
No mesmo viés de inovação tecnológica, a FCC transmitirá a SBC via satélite para todo o planeta, e quer integrar a telemetria na transmissão, indicando qual seria o vencedor da corrida se as charretes mantivessem suas velocidades até o final da corrida; ela pediu que você escrevesse um programa que, dados as distâncias até a linha de chegada, as velocidades e os números das duas charretes que lideram a corrida, determina quem seria o vencedor da corrida (você pode supor que as charretes não cruzam a linha de chegada simultaneamente).
A entrada consiste de duas linhas; cada linha descreve uma das charretes que lidera a corrida. A descrição de uma charrete consiste de três inteiros N, D e V indicando, respectivamente, o número da charrete, a sua distância à linha de chegada em metros, e a sua velocidade, em quilômetros por hora. Os números das duas charretes são distintos.
Para a saída imprima uma única linha, contendo um único número inteiro, indicando o número da charrete que seria vencedora, conforme descrito acima.
Exemplos
|
|
Solucação em C/C++
#include <stdio.h> int main1() { int n1, n2, d, v, i; double t1, t2; scanf ("%d %d %d", &n1, &d, &v); t1 = float(d) / v; scanf ("%d %d %d", &n2, &d, &v); t2 = float(d) / v; if (t1 < t2) { printf("%d\n", n1); } else { printf("%d\n", n2); } return 0; }
Considerando uma alteração no problema, permitindo um número variável de competidores, onde o número de competidores é informado no início do programa. A solução em C/C++ é apresentada a seguir:
#include <stdio.h> int main() { int d, v, i, competidores; scanf("%d", &competidores); int n[competidores]; double t[competidores]; //calcula os tempos for (int i=0; i < competidores; i++) { scanf ("%d %d %d", &n[i], &d, &v); t[i] = float(d) / v; } //encontra o menor tempo double menor = t[0]; int posicao = 0; for (int i=1; i < competidores; i++) { if (t[i] < menor) { menor = t[i]; posicao = i; } } //mostra o vencedor printf("%d\n", n[posicao]); return 0; }