Em uma galáxia muito distante, a Primeira Ordem decidiu pressionar seus recrutadores de Stormtroopers de cada planeta para conseguir aumentar rapidamente seu exército. Para fazer isso, eles resolveram fazer um levantamento a fim de descobrir de quais planetas vinham as maiores contribuições para suas tropas.
Você foi recrutado pelos generais para o levantamento e para isso deve fazer um programa que leia um vetor de registros com os dados dos Stormtroopers. Cada registro deve ter os campos: nome, planeta de origem e número de batalhas que o Stormtrooper participou. O programa deverá então calcular, para cada planeta, o número de Stormtroopers que vieram de lá e a quantidade média de batalhas que eles participaram (guardando essas informações de cada planeta em um registro). Por fim, o programa deverá exibir o vetor de registros com os dados dos planetas.
Obs1: os nomes dos planetas devem aparecer na ordem em que aparecem na entrada.
Obs2: nomes dos Stormtroopers e dos planetas não possuem espaço.
Obs3: para soluções em Python o programador deve utilizar uma estrutura de dados apropriada no lugar dos registros.
Entradas:
Quantidade de Stormtroopers que serão avaliados.
Sequência de valores para os registros de Stormtroopers, seguindo a ordem: nome, planeta de origem e número de batalhas.
Saídas:
Sequência dos valores dos registros de dados dos planetas, seguindo a ordem: nome do planeta, número de Stormtroopers e número médio de batalhas que eles participaram (separados por um único espaço).
Exemplo de entrada:
Eu consegui fazer o registro mas não sei como ordenar os planetas e fazer a soma dos soldados e a média, segue o código:
#include <iostream>
using namespace std;
struct processo{
string nome, planeta;
int batalhas;
};
int main(){
int quantidade;
cin>>quantidade;
processo storm[quantidade];
for(int i=0; i<quantidade; i++){
cin>>storm[i].nome;
cin>>storm[i].planeta;
cin>>storm[i].batalhas;
}
return 0;
}