바이트랜드에는 네 가지 화폐가 있다. 데나르, 프랑, 그로시, 탈러이다. 서로 환전할 수 없어서 이 나라 사람들에게는 큰 불편이다.
바이트랜드 비즈니스 은행(BBB)은 많은 신용 계약을 맺었는데, 화폐를 혼동하는 바람에 파산 위기에 놓였다. 모든 계약은 다음과 같이 동작한다.
BBB는 모든 고객의 요구를 한꺼번에 맞출 수 없고, 어떤 고객도 원하는 돈을 전부 받기 전에는 아무것도 갚지 않는다. 따라서 BBB는 최악의 경우에도 고객을 한 명씩 차례로 처리할 수 있도록 각 화폐에 충분한 준비금을 보유해야 한다. 한 고객을 처리한다는 것은 네 화폐 모두에서 그 고객을 한도까지 채워 주는 것이며, 이는 현재 준비금이 그 고객의 남은 필요액(한도에서 현재 신용을 뺀 값)을 네 화폐에서 동시에 감당할 수 있을 때에만 가능하다. 한도까지 채워진 고객은 빌린 돈을 모두 되갚고, 그 돈은 준비금으로 돌아온다.
BBB는 바이트랜드 국립은행(BNB)에 도움을 청했다. BNB는 BBB가 모든 고객에게 빚을 갚게 만들기에 딱 충분한 준비금, 즉 화폐마다 하나씩 네 정수를 알고 싶어 한다. 이 준비금이면 어떤 순서로든 모든 고객을 처리할 수 있지만, 네 화폐 중 어느 하나라도 1을 줄이면(나머지 셋은 그대로 두고) 처리가 불가능해져야 한다.
이런 준비금은 여러 개일 수 있다. 답을 유일하게 만들기 위해 사전순으로 가장 작은 것을 출력한다. 즉 데나르 준비금을 먼저 최소화하고, 그다음 프랑, 그다음 그로시, 마지막으로 탈러 준비금을 최소화한다.
첫째 줄에 고객 수 n이 주어진다 (1≤n≤8000). 고객은 1번부터 n번까지 번호가 매겨진다.
이어지는 n개의 줄에는 각각 여덟 개의 음이 아닌 정수 mi,1,mi,2,mi,3,mi,4,wi,1,wi,2,wi,3,wi,4이 주어지며 0≤wi,j≤mi,j≤50000을 만족한다. 여기서 mi,j는 신용 한도, wi,j는 고객 i의 현재 신용이고, j=1은 데나르, j=2는 프랑, j=3은 그로시, j=4는 탈러를 뜻한다.
음이 아닌 네 정수를 한 줄에 공백 하나로 구분하여 출력한다. 순서대로 데나르, 프랑, 그로시, 탈러의 최소 준비금이다. 이 준비금은 BBB가 모든 고객에게 빚을 갚게 만들 수 있어야 하고, 네 값 중 어느 하나라도 1을 줄이면 부족해져야 한다. 그런 준비금이 여러 개이면 사전순으로 가장 작은 것을 출력한다(데나르 값을 먼저 비교하고, 그다음 프랑, 그로시, 탈러 순).