셜록 홈즈
시간 제한1초메모리 제한128 MB
n개의 상자를 절반씩 두 그룹으로 나눠 한 색이 두 그룹 모두에서 과반이 되게 하고, 두 그룹 중 작은 비율의 최댓값과 그 색을 출력하거나 해가 없음을 알려야 합니다.
문제
유명한 탐정 셜록 홈즈가 까다로운 문제를 풀어야 합니다. 그에게는 개의 상자 이 있고(은 짝수), 각 상자에는 공이 정확히 개씩 들어 있습니다. 공은 흰색 또는 검은색입니다. 상자 는 흰 공 개와 검은 공 개를 담고 있음을 뜻합니다(따라서 ).
홈즈는 이 상자들을 각각 개씩 두 묶음으로 나누어야 합니다. 이때 흰 공 또는 검은 공 중 한 색이 두 묶음 모두에서 과반(그 묶음에 든 전체 공의 절반보다 많음)을 차지하도록 나눠야 합니다. 그런 색이 존재하면, 그 색 공이 각 묶음에서 차지하는 비율(%)을 각각 , 라 합시다. 홈즈는 를 최대로 만드는 값을 찾아야 합니다. 홈즈를 도와줄 수 있나요?
입력
입력은 여러 개의 데이터 집합으로 이루어지며, 각 집합은 하나의 상자 구성을 나타냅니다. 각 데이터 집합은 상자의 개수 ()으로 시작합니다. 이어서 한 상자에 든 공의 개수 ()이 주어지고, 그다음 각 상자마다 흰 공의 개수와 검은 공의 개수(각각 )가 이 순서대로 주어집니다. 모든 수는 공백(스페이스, 줄바꿈 등)으로 자유롭게 구분됩니다. 입력은 항상 올바르며 파일의 끝(EOF)에서 종료됩니다.
출력
각 데이터 집합마다 결과를 한 줄에 출력합니다. 과반을 차지하는 색이 존재하면, 그 색(흰색이면 W, 검은색이면 B)과 공백 하나, 그리고 의 최댓값을 소수점 이하 둘째 자리까지 반올림하여 출력합니다. 과반을 만들 수 없으면 No solution을 출력합니다.