#P1406. Starship Hakodate-maru

Starship Hakodate-maru

描述
勘测星舰HakodatemaruHakodate-maru因其两个容量无限的燃料容器而闻名。这两个容器装载的是同一种原子燃料球。

然而,存在一个不便之处:燃料容器#1的形状始终是立方体,而燃料容器#2的形状始终是正四面体。两个燃料容器必须根据其形状完全填满或完全清空,否则燃料球会变得极不稳定,并可能在容器内爆炸。因此,容器#1中的燃料球数量必须是一个立方数(即n3n^3,其中n=0,1,2,3,...n=0,1,2,3,...),而容器#2中的燃料球数量必须是一个四面体数(即n(n+1)(n+2)/6n(n+1)(n+2)/6,其中n=0,1,2,3,...n=0,1,2,3,...)。

HakodatemaruHakodate-maru目前正在星基GoryokakuGoryokaku为下一次任务做准备,任务是绘制精确而详细的恒星和星际物质图。目前两个燃料容器均为空。GoryokakuGoryokaku的指挥官ParusParus将很快向HakodatemaruHakodate-maruCaptainFutureCaptain Future发送消息,告知GoryokakuGoryokaku能够提供的燃料球数量。CaptainFutureCaptain Future需要在离开GoryokakuGoryokaku之前迅速向指挥官ParusParus回复她请求的燃料球数量。当然,CaptainFutureCaptain Future和她的船员希望尽可能多地获取燃料球。

例如,假设指挥官ParusParus提供了151200151200个燃料球。如果只有燃料容器#1可用(即燃料容器#2不可用),则最多可以放入148877148877个燃料球,因为148877=533148877=53^3533=148877<151200<543=15746453^3=148877 < 151200 < 54^3=157464。如果只有燃料容器#2可用,则最多可以放入147440147440个燃料球,因为$147440=95 \times 96 \times 97 / 6 < 151200 < 96 \times 97 \times 98 / 6$。如果同时使用燃料容器#1#2,则可以放入151200151200个燃料球,因为151200=393+81×82×83/6151200 = 39^3 + 81 \times 82 \times 83 / 6。在这种情况下,CaptainFutureCaptain Future的回复应该是“151200151200”。

由于GoryokakuGoryokaku燃料储存容量的限制,指挥官ParusParus提供的燃料球数量不会超过151200151200CaptainFutureCaptain Future和她的船员非常清楚这一点。

你是HakodatemaruHakodate-maru上的一名燃料工程师。今天的职责是帮助CaptainFutureCaptain Future计算她应该请求的燃料球数量。

输入
输入是一组最多包含10241024个正整数的序列。每行包含一个整数。序列以一个00结尾,表示输入结束,不应将其视为输入数据。你可以假设所有输入整数均不超过151200151200

输出
输出由若干行组成,每行包含一个整数。每个输出整数应为不超过对应输入整数的最大整数,且可以表示为一个非负立方数和一个非负四面体数的和。输出中不应包含其他字符。

输入数据 1

100  
64  
50  
20  
151200  
0  

输出数据 1

99  
64  
47  
20  
151200  

来源
Japan 2001