当前位置: 首页 > 面试题库 >

完美的正方形与否?

呼延渝
2023-03-14
问题内容

这是用于检查数字是否为正整数的代码。为什么行得通?

static bool IsSquare(int n)
{
    int i = 1;
    for (; ; )
    {
        if (n < 0)
            return false;
        if (n == 0)
            return true;
        n -= i;
        i += 2;
    }
}

问题答案:

因为所有理想平方都是连续奇数的和:

  • 1 = 1
  • 4 = 1 + 3
  • 9 = 1 + 3 + 5
  • 16 = 1 + 3 + 5 + 7

等等。您的程序尝试从中减去连续的奇数n,然后看它是否降为零或变为负数。

您可以通过绘制带有边的正方形作为非正式证明,{1,2,3,4,...}并观察到k+1从正方形构建正方形k需要添加2k+1单位正方形。



 类似资料:
  • 对于我正在编写的游戏,我在非正方形地图上使用四叉树。四叉树用于查找给定最大半径(圆)内的相邻单位的冲突检测、要攻击的敌人、最近的基地等。 我想知道的是,如果将四边形树由矩形而不是正方形制成,是否存在性能问题?矩形地图不是将正方形地图划分为正方形,而是在四边形树中划分为大小相等的矩形。 矩形地图上的方形四叉树:将创建一个四叉树,填充整个地图,但左侧或底部有空白/未使用区域,具体取决于地图的方向(水平

  • 问题内容: 我找到了像素完美碰撞检查的代码,并在我的代码中使用了它: 它运行完美,从来没有任何问题。直到我使用以下代码将图像设置为Config_Alpha_8为止(由于ram问题): 为什么什么都不会发生,它确实被CollisioDetected装入了,我已经检查了日志!但是它不会检测到冲突。有人可以使用config_alpha_8提供工作功能来检查位图的像素完美冲突吗? 问题答案: 在具有ALP

  • 本文向大家介绍Serv-U FTP与AD完美集成方案详解,包括了Serv-U FTP与AD完美集成方案详解的使用技巧和注意事项,需要的朋友参考一下 登陆后台查看了,公司目前正在使用的方案。FTP服务器使用的是Server-u FTP,验证方式选择的windows身份验证。文件服务器使用的windows本身自带的NTFS权限进行分配的,而邮件服务器使用的是IBM的domino。 既然知道了现在使用的

  • 本文向大家介绍Bootstrap 实现查询的完美方法,包括了Bootstrap 实现查询的完美方法的使用技巧和注意事项,需要的朋友参考一下 Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。 废话不多说了,直接给大家贴bootstrap实现查询的代码了。具体代码如下所示

  • 本文向大家介绍Ajax跨域的完美解决方案,包括了Ajax跨域的完美解决方案的使用技巧和注意事项,需要的朋友参考一下 公司要做一个活动页面,在其过程中发现所有的接口,ajax请求跨域。这里对跨域做个简单介绍以及提供几种解决办法。   由于浏览器实现的同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、端口)的资源,所以AJAX是不允许跨域的。这里提供自己常用的三种方法: 1、j

  • 本文向大家介绍检查给定的四个点是否形成正方形,包括了检查给定的四个点是否形成正方形的使用技巧和注意事项,需要的朋友参考一下 在二维平面中,给出了四个点。该算法将检查四个点是否形成正方形。 检查正方形我们必须匹配这些条件- 给定点形成的所有四个边都相同。 所有两个连接侧都是直角的。 输入输出 算法 在此过程中,我们将使用方法squareDist(p1,p2),它将返回两个给定点的平方距离。 输入: 

  • 本文向大家介绍C#正方形图片的绘制方法,包括了C#正方形图片的绘制方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了C#绘制正方形图片的的具体代码,供大家参考,具体内容如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 问题内容: 您有一个要运行一些软件要求的项目(例如:特定版本的Apache,PHP版本,MySQL数据库实例以及其他几个软件)。 您已经发现Vagrant,因此您的虚拟环境已全部设置好。您可以在配置文件和食谱之外创建框。 您还已经了解了诸如Jenkins之类的持续集成系统的优势。 现在,您想结合这两个世界(Vagrant和Jenkins)以获得完美的持续集成环境。更具体地说,您不希望在运行Jenk