Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Math 采访问题:数字之和乘以3等于它本身_Math_Integer - Fatal编程技术网

Math 采访问题:数字之和乘以3等于它本身

Math 采访问题:数字之和乘以3等于它本身,math,integer,Math,Integer,我有个电话面试。其中一个问题是 有一个数字,它的三位数之和等于这个数字 而且只有一个这样的数字。这个号码是哪一个 我不知道如何处理这个问题。并寻求暗示。他们什么也不给,我也不知道电话号码是多少 现在,像我这样信息量有限的人应该如何用给定的信息来回答这个问题(假设他们没有告诉我数字中有多少位数)?好吧,我可以想象,在这样的电话采访中,一个现场问题将是非常具有挑战性的。然而,这也会帮助你解决这个问题。想想三的倍数的小数字。12,1+2=3X3=9不对,然后一直走到:27,2+7=9,9*3=27宾果

我有个电话面试。其中一个问题是

有一个数字,它的三位数之和等于这个数字 而且只有一个这样的数字。这个号码是哪一个

我不知道如何处理这个问题。并寻求暗示。他们什么也不给,我也不知道电话号码是多少


现在,像我这样信息量有限的人应该如何用给定的信息来回答这个问题(假设他们没有告诉我数字中有多少位数)?

好吧,我可以想象,在这样的电话采访中,一个现场问题将是非常具有挑战性的。然而,这也会帮助你解决这个问题。想想三的倍数的小数字。12,1+2=3X3=9不对,然后一直走到:27,2+7=9,9*3=27宾果!很多时候,我们在寻找你的思考过程,也在寻找正确的答案

此数字不能超过两位,因为如果它有n>2位,则其数字的最大和为n*9和n*9*3<10^(n-1)。因此,您应该只在两位数字之间搜索(1位数字根本不可能)。它也应该被3整除,现在你的搜索限制在30个以内。而且它应该可以被9整除(为什么?),所以你可以简单地说是27(不是18,27是正确的答案,并且知道只有一个数字,这就是解决方案)。

一个python暴力解决方案,它可能不是最好的,但它是有意义的

def sum_digits(n):
    s = 0
    while n:
        s += n % 10
        n /= 10
    return s


for i in range(1, 1000):
    if i == sum_digits(i) * 3:
        print i

如果数字为10x+y,则10x+y=3(x+y)-->x/y=2/7
所以最明显的解决方案是x=2,y=7…因此27是一个答案

猜想。实验。如果我告诉你这个数字正好有两位数,你会怎么做?如果我告诉你这个数字正好有3位数,你会怎么做?你能做出任何假设吗?你能测试一下吗?你能证明他们吗?这个问题似乎离题了,因为它与编码无关。我会问“你指的是0和另一个数字中的哪一个?”@user1655072下次面试时请记住,当你在面试中被问到这样的问题时,他们并不是在寻找答案(他们知道答案!)-他们希望看到你思考。让他们看看!问题是,我的想法是,他们没有能力提出这样的问题。1位数是可能的:0@Ingo,我认为当我们谈论数字时,我们通常谈论自然数。(否则问题就错了)。当然,如果我们相信Peano和Frege,0是第一个自然数。但无论如何,+1是很好的推理!不,如果“我们”不是数学家就是程序员,我们肯定不是说只在说“数字”时才算数字。作为专业处理数字的人,我们会使用正确的术语和限定条件。如果y=0,那么你就是在除以0。是的,@sara,因此我们现在是y!=在我回答后05分钟,如果你确定答案是两位数,并且我的答案已经很好地陈述了,那么很容易假设答案是27。我不知道@user1655072是怎么接受这个答案的!