【发布时间】:2011-09-25 23:07:21
【问题描述】:
可能重复:
Fastest way to determine if an integer's square root is an integer
有人知道找出一个数字是否是完美平方的逻辑吗? (Other than Newtons Method or Synthetic Division Method)
For Eg:- 4, 16, 36, 64 are Perfect Squares.
我将输入为441,逻辑应该判断它是否是完美正方形。
这是亚马逊面试中提出的一个问题。
我想在没有任何内置函数的情况下这样做
【问题讨论】:
-
如果诀窍在于输入本身,那么由于 441 在右侧有一个,那么它不可能是完美正方形。
-
@Jalal:什么,像 81 不是? :-)
-
@Jalal - 441 = 21^2。至少检查一下... 此外,取任何以 1 结尾的数字,例如 52941,将其乘以自身,得到一个以 1 结尾的正方形。
-
@regularfry: @Kobi: 我以为那只是 2 的 n 次方。
标签: c#