[BOJ][C#] 2212 센서

LimJaeJun·2023년 11월 1일

PS/BOJ

목록 보기
36/108

📕 문제

📌 링크

📗 접근 방식

센서 위치를 배열로 저장하고 정렬 각 센서 사이의 거리를 계산하고, 그 거리를 리스트에 저장한다.
리스트를 오름차순으로 정렬한 후, 가장 긴 거리들 k개를 제외한 나머지 거리들의 합을 출력한다.

  • 센서가 N개고 집중국이 K개면 N-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);
        }
    }
}

📙 오답노트

📒 알고리즘 분류

  • 그리디 알고리즘
  • 정렬
profile
Dreams Come True

0개의 댓글