N可分的最小正数

use*_*397 7 algorithm math

1 <= N <= 1000

如何找到可被N整除的最小正数,其数字和应等于N.

例如:
N:结果
1:1
10:190

并且算法不应超过2秒.

任何想法(Pseudocode,pascal,c ++或java)?

Jon*_*oni 0

更新:我知道结果应该在 0 到 1000 之间,但事实并非如此。对于较大的输入,na\xc3\xafve 算法可能需要相当长的时间。80 的输出将为 29999998880。

\n\n
\n\n

您不需要花哨的算法。在任何相当现代的计算机上,即使在解释语言中,检查 1000 个数字的条件的循环将花费不到 2 秒的时间。

\n\n

如果你想让它变得聪明,你只需要检查 N 的倍数的数字。为了进一步限制搜索空间,N 的余数和结果除以 9 时必须相等。这意味着现在你必须每 9N 中只检查一个数字。

\n

  • N 小于 1000,而不是您的算法应返回的数字。 (2认同)