네 명이 각각 2의 거듭제곱만큼 구슬을 내고, 같은 크기 더미는 하나만 남기며 더미를 쪼갤 때, 구슬 하나만 남기는 최소 턴 수를 구한다.
어려움8수학정수론그리디비트 연산아직 제출이 없습니다시간 제한3초메모리 제한512 MBDebbie, Debby, Debra, Deborah가 구슬 놀이를 한다. Debbie는 구슬 2d1개, Debby는 2d2개, Debra는 2d3개, Deborah는 2d4개를 가져왔다. 네 사람은 가져온 구슬을 모두 한 무더기로 모았고, 이 무더기에는 구슬 2d1+2d2+2d3+2d4개가 있다.
놀이는 차례를 거듭하며 진행한다. 한 차례는 다음 두 단계로 이루어진다.
무더기가 하나만 남고 그 무더기에 구슬이 한 개만 있으면 놀이가 끝난다. 이 놀이는 협동 놀이다. 네 사람은 서로 겨루지 않고 함께 같은 목표를 이룬다. 목표는 놀이를 가장 적은 차례에 끝내는 것이다.
각 테스트 케이스마다 놀이를 끝내는 데 필요한 차례 수의 최솟값을 구하라.
첫째 줄에 테스트 케이스의 개수 T가 주어진다. (1≤T≤500)
다음 T개의 줄에 테스트 케이스가 한 줄에 하나씩 주어진다. 각 줄에는 음이 아닌 정수 d1, d2, d3, d4가 주어진다. (0≤di≤20)
각 테스트 케이스마다 놀이를 끝내는 데 필요한 차례 수의 최솟값을 한 줄에 하나씩 출력한다.
d1,d2,d3,d4가 각각 0,1,2,3인 경우를 보자. 처음에는 구슬 20+21+22+23=15개짜리 무더기 하나가 있다. 첫 차례에 15개를 10개와 5개로 나눈다. 둘째 차례에 10개를 5개와 5개로 나누면 5개짜리 무더기가 셋이 되므로 둘을 버리고 5개짜리 무더기 하나만 남는다. 셋째 차례에 5개를 1개와 4개로 나눈다. 넷째 차례에 4개를 2개와 2개로 나누면 2개짜리 무더기 하나를 버려 1개짜리와 2개짜리 무더기가 남는다. 다섯째 차례에 2개를 1개와 1개로 나누면 1개짜리 무더기 둘을 버리고 하나만 남아 놀이가 끝난다. 다섯 차례보다 적게는 끝낼 수 없으므로 답은 5이다.