센서 위치를 배열로 저장하고 정렬 각 센서 사이의 거리를 계산하고, 그 거리를 리스트에 저장한다.
리스트를 오름차순으로 정렬한 후, 가장 긴 거리들 k개를 제외한 나머지 거리들의 합을 출력한다.
namespace BOJ_2212
{
class Program
{
static void Main()
{
int n = int.Parse(Console.ReadLine());
int k = int.Parse(Console.ReadLine());
int[] inputs = Array.ConvertAll(Console.ReadLine().Split(), int.Parse);
Array.Sort(inputs);
List<int> list = new List<int>();
for (int i = 0; i < n - 1; i++)
{
list.Add(Math.Abs(inputs[i] - inputs[i + 1]));
}
var answer = list.OrderBy(x => x).Take(n - k).Sum();
Console.WriteLine(answer);
}
}
}
그리디 알고리즘정렬