시간 제한
메모리 제한
시간 제한
2초
메모리 제한
128 MB
화학에서 말하는 용액은 컴퓨터 프로그래밍에서 말하는 솔루션과는 다른 뜻이다.
어떤 물질 x리터를 물 (100 - x)리터에 섞으면 그 물질의 농도가 x%인 용액 100리터를 얻는다.
다솜이는 같은 물질이 녹아 있는 용액을 담은 병 N개를 가지고 있다. 각 병에는 현재 들어 있는 용액의 양과 농도가 적힌 이름표가 붙어 있다.
다솜이는 이 병들에서 원하는 만큼의 용액을 골라 한 병에 모아 농도가 정확히 M%인 용액을 만들려고 한다. 병 하나를 전부 사용하지 않아도 되며, 필요한 만큼만 덜어 섞을 수 있다.
만들 수 있는 M% 용액의 최대 양을 리터 단위로 구하시오.
첫째 줄에 병의 개수 N과 만들고자 하는 농도 M이 주어진다.
N은 50 이하의 자연수이고, M은 100 이하의 음이 아닌 정수이다.
둘째 줄부터 N개의 줄에 각 병의 정보가 하나씩 주어진다. 각 줄에는 이름표에 적힌 농도와 그 병에 들어 있는 용액의 양이 공백으로 구분되어 주어진다. 농도는 100 이하의 음이 아닌 정수이고, 용액의 양은 1000 이하의 자연수이다.
첫째 줄에 만들 수 있는 M% 용액의 최대 양을 리터 단위로 출력한다.
절대 오차 또는 상대 오차가 10^-2 이하이면 정답으로 인정된다.
목표 농도보다 낮은 용액은 물이 많은 쪽으로, 목표 농도보다 높은 용액은 물질이 많은 쪽으로 기여한다. 두 쪽의 부족분과 초과분이 같아지도록 섞어야 목표 농도를 만들 수 있다.