측량 우주선 하코다테마루는 용량에 제한이 없는 연료 탱크 두 개로 유명하다. 두 탱크에는 같은 종류의 원자 연료구를 담는다.
다만 불편한 점이 하나 있다. 1번 연료 탱크는 정육면체 모양이고, 2번 연료 탱크는 정사면체 모양이다. 두 탱크는 각각 완전히 비어 있거나 모양에 꼭 맞게 채워져 있어야 한다. 그렇지 않으면 연료구가 몹시 불안정해져서 탱크 안에서 폭발할 수 있다. 그래서 1번 탱크에 넣는 연료구 개수는 세제곱수, 즉 n=0,1,2,3,…에 대한 n3이어야 하고, 2번 탱크에 넣는 개수는 사면체수, 즉 n=0,1,2,3,…에 대한 n(n+1)(n+2)/6이어야 한다.
하코다테마루는 지금 별 기지 고료카쿠에 머물며 다음 임무를 준비하고 있다. 별과 성간 물질의 정밀한 성도를 만드는 임무다. 두 탱크는 모두 비어 있다. 고료카쿠의 파루스 사령관은 곧 하코다테마루의 퓨처 함장에게 고료카쿠가 공급 가능한 연료구 개수를 알린다. 퓨처 함장은 배가 고료카쿠를 떠나기 전에 몇 개를 요청할지 빠르게 답해야 한다. 물론 함장과 승무원은 연료구를 최대한 많이 받고 싶어한다.
예를 들어 파루스 사령관이 연료구 151200개를 제안한 경우를 보자. 1번 탱크만 쓸 수 있다면 53×53×53=148877<151200<54×54×54이므로 최대 148877개를 넣는다. 2번 탱크만 쓸 수 있다면 95×96×97/6=147440<151200<96×97×98/6이므로 최대 147440개를 넣는다. 1번 탱크와 2번 탱크를 함께 쓰면 151200=39×39×39+81×82×83/6이므로 151200개를 전부 넣는다. 이때 퓨처 함장의 답은 151200이다.
고료카쿠의 연료 저장고 용량 때문에 파루스 사령관의 제안은 151200을 넘지 않는다. 함장과 승무원도 그 사실을 알고 있다.
당신은 하코다테마루에 배속된 연료 기술자다. 오늘 할 일은 퓨처 함장이 요청할 연료구 개수를 계산하는 것이다.
입력은 양의 정수를 최대 1024개 담은 수열이다. 각 줄에 정수가 하나씩 주어진다. 수열 다음에는 0이 오는데, 입력의 끝을 알리는 표시이므로 처리하지 않는다. 입력으로 주어지는 정수는 모두 151200 이하다.
입력으로 주어진 값마다 한 줄에 정수를 하나씩 출력한다. 그 정수는 음이 아닌 세제곱수와 음이 아닌 사면체수의 합으로 나타나는 정수 중에서 대응하는 입력 값 이하인 가장 큰 값이다. 그 밖의 문자는 출력하지 않는다.