[백준] 10818번 문제 최소, 최대

cometrue·2025년 2월 6일

코딩테스트

목록 보기
8/9

문제풀이

using System;
using System.Linq;

class Program
{
    static void Main()
    {
        // 정수의 개수 N 입력
        int N = int.Parse(Console.ReadLine());

        // N개의 정수를 공백으로 구분하여 입력받고, 배열로 변환
        int[] numbers = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();

        // 최솟값과 최댓값 찾기
        int min = numbers.Min();
        int max = numbers.Max();

        // 결과 출력
        Console.WriteLine($"{min} {max}");
    }
}

사용된 메서드

Select()

Select는 C#에서 LINQ(Language Integrated Query)의 일부로, 컬렉션(예: 배열, 리스트 등)의 각 요소를 변환하거나 매핑하는 데 사용되는 메서드이다. Select는 프로젝션 작업을 수행하며, 원본 컬렉션의 각 요소를 새로운 형태로 변환한 결과를 반환한다.

예를 들어, 정수 배열의 각 요소를 제곱하는 경우

int[] numbers = { 1, 2, 3, 4, 5 };
IEnumerable<int> squares = numbers.Select(x => x * x);
  • numbers 배열의 각 요소(x)에 대해 x * x를 계산합니다.
  • 결과는 { 1, 4, 9, 16, 25 }와 같은 새로운 컬렉션입니다.

문자열 배열을 정수 배열로 변환

string[] stringNumbers = { "1", "2", "3", "4", "5" };
IEnumerable<int> intNumbers = stringNumbers.Select(int.Parse);
// 결과: { 1, 2, 3, 4, 5 }

Select는 컬렉션의 각 요소를 변환하거나 매핑하는 데 매우 유용한 메서드이다. LINQ를 사용하여 데이터를 처리할 때 자주 사용되며, 코드를 간결하고 가독성 있게 만들어 준다.

ToArray()

ToArray()는 C#에서 LINQ(Language Integrated Query)의 일부로, 컬렉션(예: IEnumerable)을 배열(T[])로 변환하는 메서드이다. 이 메서드는 LINQ 쿼리의 결과를 배열로 저장하거나, 지연 실행(Lazy Evaluation)되는 LINQ 쿼리를 즉시 실행하여 배열로 반환할 때 사용된다.

문자열 리스트를 배열로 변환

List<string> fruits = new List<string> { "Apple", "Banana", "Cherry" };
string[] fruitArray = fruits.ToArray();
// 결과: { "Apple", "Banana", "Cherry" } (string[] 타입)

LINQ Select와 함께 사용

var numbers = new List<int> { 1, 2, 3, 4, 5 };
var squares = numbers.Select(x => x * x).ToArray();
// 결과: { 1, 4, 9, 16, 25 } (int[] 타입)
  • Select는 각 요소를 제곱하는 LINQ 쿼리입니다.

  • ToArray()는 변환된 결과를 배열로 반환합니다.

    ToArray()는 LINQ 쿼리의 결과를 배열로 변환할 때 유용한 메서드이다. 지연 실행을 종료하고 결과를 즉시 배열로 반환하며, 원본 컬렉션과 독립적인 새로운 배열을 생성한다. LINQ를 사용하여 데이터를 처리할 때 자주 사용되며, 배열이 필요한 경우에 적합하다.

profile
게임개발자

0개의 댓글