SP3476 DEPOSIT - Deposit

题目描述

银行推出了各种存款计划来吸引客户。在一种为期 $r$ 年的递减定期存款计划(PRRDS)中,客户需要在 $r$ 年内逐年减少存款金额。根据计划的年限 $r$ 和这 $r$ 年中存入的总金额 $T$,银行将在到期时(即 $r$ 年后)按照第一年存款金额的 $k$ 倍来返还资金 $R$,以便保证这笔回报 $R$ 对客户具吸引力,且 $k$ 是一个自然数。 在 PRRDS 中,除了最后两年外,各年度的存款金额必须等于未来两年存款额之和。最后两年的存款额为 $x$(最后一年)和 $y$(倒数第二年),且这两个数递减($x, y > 0; y > x$),并且计算这两个数时,要确保 $r$ 年总存款金额为指定的 $T$。假设所有存款都是整笔的卢比。 请编写一个程序,该程序接收 $r$、$k$ 和 $T$ 作为输入,并计算出存款额 $x$ 和 $y$ 以使回报 $R$ 达到最大。例如,对于一个为期 4 年的计划,当 $r = 4$,$k = 3$,且 $T = 500$ 时,其最优的存款额是 248、126、122 和 4,最终可以获取最大回报 $R = 744$,此时 $x = 4$,$y = 122$。

输入格式

输入中可能包含多个测试用例。 每个测试用例由一行输入给出,对应 $r$、$k$ 和 $T$ 的值。假设 $r$ 不超过 20。 在最后一个测试用例之后,有一行以 `0` 开头的行,表示输入的结束。

输出格式

对每个测试用例输出一行。该行应输出计算出的 $x$、$y$ 和 $R$ 的值。 **本翻译由 AI 自动生成**