집게사장의 꿈

백준 C# 2798 블랙잭 본문

카테고리 없음

백준 C# 2798 블랙잭

Krapboss 2024. 7. 4. 00:22
문제

 

N장의 카드 중 제시된 숫자 룰 조합하여 M에 근접한 값의 합을 구하는 것

결과 예시

 

해결

브루트 포스는 단순무식한 방법

for을 통한 모든 조합을 가정

 

 

코드
static void Main(string[] args)
{
    int[] num = Console.ReadLine().Split().Select(x => int.Parse(x)).ToArray();
    int[] numbers = Console.ReadLine().Split().Select(x => int.Parse(x)).ToArray();

    int max = num[1];
    int iter = num[0];
    int result = 0;
    int length = numbers.Length;


    for (int i = 0; i < length - 2; i++)
    {
        for(int j = i+1; j < length - 1; j++)
        {
            for (int k = j+1; k < length; k++)
            {
                int tmp = numbers[i] + numbers[k] + numbers[j];
                if(tmp <= max && tmp > result) result = tmp;
            }
        }
    }

    Console.WriteLine(result);
}