2011-09-18 45 views
23

这是一个问题,在我回过头的一个Google采访中被问到了我的朋友。他无法提出解决方案,但最终无论如何都要收拾工作。这里的找到所有完美的正方形,它们是一些300位数的排列

你已经拿到300位,包括100分的,100个三三两两,和100个三分球的问题,现在想出了一个算法,将确定所有这些数字这是一个完美的正方形

我试了一会儿,但很难过。有关如何去做这件事的任何想法?

+1

每个答案都必须使用所有提供的数字或任何子集? – cheeken

+1

我认为这意味着这些数字都有300位数字。 –

+0

@cheeken所有300位数字都需要用于每个答案。 – sanz

回答

54
printf ("{}\n"); 

有问题的集合是空的(数字的总和可以被3整除,但不能被9整除)。

+21

对于任何不明白原因的人:如果数字的总和可以被3整除,则数字可以被3整除。同样适用于9.由于数字的总和可以被3整除而不是9,因此数字是3的倍数,但不是9.一个完美的正方形不能有正好一个因子3. – Mysticial

+3

+1。很好的答案。 –

+1

哇......我没有想到... – quasiverse

0

n.m的答案当然很棒。

也很容易看出,只能有方格的数字在{1,2,3}之间有一个最后一个数字,是一个以单位数字9开始的数字。现在,如果我们使用9作为最后一个数字的一个数字可能会与其中一个组合相符,我们很快就会看到,没有10位数字和9个单位数字,可以在其正方形的第10个数字中给出一个涉及{1,2,3}的数字。

也许,这个解释回答了一个问题,例如“300个数字与1,2和3的任何组合都有一个平方根”?

+0

最新的数字可以是1。 –

相关问题