Mais um problema da categoria iniciante do BEECROWD sendo resolvido em C e C++! Dessa vez é o problema Hora da Corrida, código 2968. Veja as soluções abaixo.
Plataforma: URI (BEECROWD)
Problema: 2968
Linguagens: C e C++
Solução:
Nesse exercício eu aproveitei a função matemática ceil, que calcula o teto do número, que nada mais é que o próximo número inteiro maior que o valor informado (que é real). Ou seja, se o valor for 6.56, o teto do número é 7. Nesse caso precisamos do teto de (r x i) / 10. Sabendo isso e convertendo o retorno da função ceil para int, precisamos apenas realizar o cálculo para todo i entre 1 e 9 e depois imprimir novamente que teremos a resposta. Na verdade há outra possibilidade de solução mais genérica, mas preferi resolver dessa forma. E você, como resolveu?
Código em C:
#include <stdio.h> #include <math.h> int main() { int v, n, i; double r; scanf("%d %d", &v, &n); r = v * n; for (i = 1; i < 9; i++) { printf("%d ", (int) ceil((r*i)/10.0)); } printf("%d\n", (int) ceil((r*i)/10.0)); return 0; }
#include <iostream> #include <cmath> using namespace std; int main() { int v, n, i; double r; cin >> v >> n; r = v * n; for (i = 1; i < 9; i++) { cout << (int) ceil((r*i)/10.0) << " "; } cout << (int) ceil((r*i)/10.0) << endl; return 0; }