@arfneto O ENUNCIADO COMPLETO SERIA ESSE
Uma empresa resolveu inovar criando um serviço de ônibus compartilhado. O serviço funciona da seguinte maneira: os passageiros embarcam todos juntos em uma certa parada e cada um escolhe o ponto onde pretende desembarcar. O ônibus realiza um determinado trajeto. Cada parada no trajeto é determinada pela sua distância em relação ao ponto inicial (ponto 0). O passageiro i especifica o destino xi para o qual deseja ir. Você pode assumir que as distâncias xi estão em quilômetros e já estão ordenadas em ordem crescente. Porém, o ônibus só irá realizar k paradas, o que faz com que alguns passageiros não desçam exatamente onde gostariam, causando descontentamento.
Se o passageiro i descer do ônibus na posição y, então seu grau de descontentamento é (xi - y)2. Não há paradas de ônibus fixas. As paradas são decididas após a análise de todas as demandas dos passageiros. Como o ônibus só pode fazer k paradas, seu objetivo é criar um algoritmo que minimize a soma do grau de descontentamento de todos os passageiros.
Por exemplo, se há 4 passageiros com x1 = 1, x2 = 18, x3 = 19, x4 = 23 e k = 2, então a solução ótima será fazer duas paradas nos pontos 1 e 20. A primeira parada serve ao primeiro passageiro; a segunda parada serve aos 3 passageiros restantes. Os graus de descontentamento dos passageiros 1, 2, 3 e 4 são 0, 4, 1 e 9, respectivamente, e o total de descontentamento é 14.
Objetivo
Criar um programa em linguagem C que implemente um algoritmo para a determinação dos melhores pontos de parada do ônibus compartilhado em função das demandas dos passageiros e do número máximo de paradas k.