1217 - Getline Two - Frutas
Precisamos de mais atenção para resolver este problema.
Descrição
Solução
Com isso em mente, o problema se torna muito mais fácil para linguagens de baixo nível, já que basta contar quantos espaços existem na linha inteira. Para linguagens de alto nível, podemos contar o número de palavras normalmente separando-as pelo caractere do espaço.
#include <string.h>
#include <stdio.h>
int main(){
char *pos;
int N, frutas;
char linha[10000];
double V, pesoPorDia, gastoPorDia;
scanf("%d\n", &N);
pesoPorDia = 0.0;
gastoPorDia = 0.0;
for(int i = 1; i <= N; ++i){
scanf("%lf\n", &V);
scanf("%[^\n]", &linha);
frutas = 1;
pos = strchr(linha, ' ');
while(pos != NULL){
++frutas;
pos = strchr(pos + 1, ' ');
}
printf("day %d: %d kg\n", i, frutas);
pesoPorDia += frutas;
gastoPorDia += V;
}
pesoPorDia /= N;
gastoPorDia /= N;
printf("%.2lf kg by day\nR$ %.2lf by day\n", pesoPorDia, gastoPorDia);
return 0;
}
Last updated
Was this helpful?