【发布时间】:2020-01-26 01:24:52
【问题描述】:
我必须编写一个函数来找到其数字总和为 N 的最小数字。我无法以更好的方式计算出它的蛮力,但在添加整数时它没有正确添加数组,它总结了一个非常奇怪的模式。
public int sumN(int N) {
int total = 10;
char[] n;
ArrayList<Integer> nrs = new ArrayList<Integer>();
int sum = 0;
String x = "";
if(N<=9)
return N;
else
{
while(true)
{
x = Integer.toString(total);
n = x.toCharArray();
for(char c : n)
{
nrs.add(Character.getNumericValue(c));
}
for(Integer i : nrs)
{
sum = sum + i;
}
if(sum == N)
{
return total;
}
total++;
}
}
【问题讨论】:
-
“我想不出比蛮力更好的方法,但即便如此,我的数学似乎有点不对劲。”但是你的问题具体是什么?
-
抱歉,我用更多信息编辑了这个问题。
标签: java algorithm char integer