最近学到了一个判断某个数是否为平方数的比较骚的做法:
任意数的平方都能用一个首项为1,公差为2的等差数列表示,所以要判断一个数是不是平方数可以用这个数依次减1,减3,减5…,如果最后能够减到0,那么这个数就是平方数,否则就不是
代码实现:
bool isSquare(int x) {
for(int i = 1;x > 0;i += 2) x -= i;
return x == 0;
}
原文链接: https://www.cnblogs.com/junlin623/p/17019206.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/308917
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!