집게사장의 꿈

백준 C# 좌표정렬하기 11650 본문

기타/백준

백준 C# 좌표정렬하기 11650

Krapboss 2024. 8. 28. 19:52

문제

x, y 값이 주어질 때, 첫번째로 x를 오름차순으로 정렬하고 x값이 같을 경우 y의 값으로 오름차순으로 정렬하라

 

해결

OrderBy와 ThenBy 를 활용한 간단한 정렬

internal class 좌표정렬하기11650
{
    static void Main(string[] args)
    {
        string[] input(StreamReader s) => s.ReadLine().Split();

        List<(int x, int y)> list = new List<(int x, int y)>();
        using (StreamReader sr = new StreamReader(Console.OpenStandardInput()))
        {

            int iter = int.Parse(input(sr)[0]);

            while (iter > 0)
            {
                iter--;
                int[] arr = Array.ConvertAll(input(sr),int.Parse);
                list.Add((arr[0], arr[1]));
            }

            list = list.OrderBy(x => x.x).ThenBy(x => x.y).ToList();
        }

        StringBuilder sb = new StringBuilder();

        foreach(var a in list)
        {
            sb.AppendLine($"{a.x} {a.y}");
        }
        Console.WriteLine(sb);
    }
}

 

'기타 > 백준' 카테고리의 다른 글

백준 C# 1018 체스판 다시 색칠하기  (0) 2024.08.28
백준 C# 10814 나이순 정렬  (0) 2024.08.28
백준 C# 평범한배낭 12865  (0) 2024.08.15
백준 C# LCS 9251  (1) 2024.08.15
백준 C# 1916 최소비용 구하기  (0) 2024.08.10