PS

백준 10881. 프로도의 선물 포장

tose33 2022. 7. 28. 13:52

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

 

10881번: 프로도의 선물 포장

프로도는 네오에게 줄 생일 선물을 세 개 샀다. 이 세 개의 선물은 직사각형 모양의 선물 상자에 각각 하나씩 담겨 있다. 프로도는 이 선물들을 적당한 크기의 직사각형 포장 상자에 넣어 포장하

www.acmicpc.net

 

 

선물은 단 세개이므로, 배치할수 있는 경우의수가 많지는 않다.

우선 선물 3개를 (1)가로로 쭉 배치 하는 경우가 있고 이 경우 세로의 크기는 모든 세로값을 더한 합이고, 가로는 셋 중 가장 큰 값이 된다.

그리고 (2)세로로 쭉 배치 하는 경우가 있다.

 

이것 이외에는 선물 하나는 위에 남기고, 두개를 아래로 나란히 배치하는 경우가 있다.

 

ㅁ ㅁ 

 

이런 식으로 배치하는데, (3)첫 번째 선물을 위에두는 경우, (4)두 번째 선물을 위에 두는 경우, (5)세번 째 선물을 위에 두는 경우가 있다.

이 경우에는 세로크기는 위에 남은 선물의 세로크기 + 아래 두 선물중 더 큰 세로 크기 가 된다.

가로 크기는 위에 남은 선물의 가로크기와 아래 두 선물의 가로크기의 합보다 중 큰 값이 된다.

 

따라서 총 다섯 가지 경우가 있는데, 각 선물을 회전할수도 있다는 점을 생각해야 한다. 

 

1번 선물 회전

2번 선물 회전 

3번 선물 회전 

1,2번 선물 회전 

2,3번 선물 회전 

1,3번 선물 회전 

1,2,3번 선물 회전 

 

7가지 경우가 있다.

 

 

 

 


아래는 다른 분들 코드를 참고한 더 깔끔하게 푼 버전.