반쵸는 유명 초밥집의 주인이다. 반쵸는 오늘 바다에서 채집한 재료로 "복어 특초밥" 개와 "바다포도 특초밥" 개를 만들었다.
반쵸는 이 초밥들을 모두 배달하기 위해 포장해야 한다. 하나의 상자에는 최대 개의 초밥을 담을 수 있다. 단, 각 상자에는 최소 "복어 특초밥" 개와 "바다포도 특초밥" 개가 담겨야 한다.
반쵸가 모든 초밥을 포장할 수 있는 상자의 최소 개수를 구하는 프로그램을 작성하라.
첫 줄에 테스트 케이스의 수를 나타내는 정수 가 주어진다. ()
이어지는 개의 줄에는 차례로 각 테스트 케이스가 주어진다. 각 줄은 복어 특초밥의 개수를 나타내는 정수 와 바다포도 특초밥의 개수를 나타내는 정수 가 공백으로 구분되어 주어진다. ()
개의 줄에 걸쳐 답을 출력한다. 번째 줄에는 번째 테스트 케이스에 대한 답을 출력한다. 만약, 문제의 조건을 만족하면서 모든 초밥을 포장하는 것이 불가능한 경우 을 출력한다.
3 2 2 5 2 5 1
1 2 -1
첫 번째 테스트 케이스에서 하나의 상자에 개의 초밥을 모두 담을 수 있다.
두 번째 테스트 케이스에서는 한 상자에 복어 특초밥 개와 바다포도 특초밥 개, 다른 상자에 복어 특초밥 개와 바다포도 특초밥 개를 담을 수 있다.
세 번째 테스트 케이스에서는 바다포도 특초밥이 개밖에 없어서 문제의 조건을 만족하면서 상자에 담는 것이 불가능하다.
입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞혀야 그 종류에 배정된 점수를 받을 수 있다.
종류 1: 31점
종류 2: 17점
불가능한 경우는 주어지지 않음.
종류 3: 52점
추가적인 제한 조건이 없음.