Algorithm/BAEKJOON

[C#]백준 11256 사탕 - Hide

zz0zz9 2024. 10. 2. 17:04
반응형
반응형

https://www.acmicpc.net/problem/11256

문제 요약

각 테스트 케이스 별 사탕 포장에 필요한 최소한의 상자 개수 출력하기

 

 

예제 입력 1 해석
1 테스트 케이스 T개
20 5 1번째 테스트 케이스의 사탕 개수 J와 상자 개수 N
3 4 각 상자의 세로 길이, 가로 길이
 

 

 

참고

사탕은 1개 당 1*1만큼의 공간을 차지한다.

=> 주어진 사탕이 12개면 최소 가로*세로=12인 상자 하나에 전부 담을 수 있게 된다.

 

 

풀이
int n = int.Parse(Console.ReadLine());
while (n-- > 0)
{
    var a = Console.ReadLine().Split().Select(int.Parse).ToArray();
    var l = new List<int>();
    int c = 0;
    while (a[1]-- > 0)
    {
        var t = Console.ReadLine().Split().Select(int.Parse).ToArray();
        l.Add(t[0] * t[1]);
    }
    l.Sort(); l.Reverse();
    for (int i = 0; i < l.Count; i++)
    {
        if (a[0] > 0)
        {
            c++;
            a[0] -= l[i];
        }
        else break;
    }
    Console.WriteLine(c);
}

코드 짱길다

반응형