首页 > 其他分享 >L5-367. 有效的完全平方数

L5-367. 有效的完全平方数

时间:2023-11-07 15:45:56浏览次数:27  
标签:平方 right num int mid return L5 367 left

 解决方法:

加一个num=1 的判断条件即可

因为下标从 0 开始,当num=1 时,left 、right 、mid 的下标都是0,这样mid*mid = 0,所以 X =1 时要单独考虑

class Solution {
    public boolean isPerfectSquare(int num) {
       long left = 0, right = num - 1;
       //官方题解
       //int left = 0, right = num - 1;
       if (num == 1) {
           return true;
       }
        while (left <= right){
            long mid = (left + right) / 2;
            //int mid = (left + right) / 2;
            //long square = (long) mid * mid;  (可以前面left、right、mid都用int,最后只在这一步进行强转)
            long sqrt = mid * mid;
            if (sqrt < num){
                left = mid + 1;
            }else if (sqrt > num) {
                right = mid - 1;
            }else {
                return true;
            }
        }
        return false;
    }
}

 

标签:平方,right,num,int,mid,return,L5,367,left
From: https://www.cnblogs.com/18191xq/p/17815130.html

相关文章

  • L4: 69.x的平方根
    给你一个非负整数 x ,计算并返回 x 的 算术平方根 。由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去。注意:不允许使用任何内置指数函数和算符,例如 pow(x,0.5) 或者 x**0.5 。 示例1:输入:x=4输出:2示例2:输入:x=8输出:2解释:8的算术平方根......
  • Centos7 安装 Mysql5.7
    一、下载mysql5.7的安装包下载地址:https://dev.mysql.com/downloads/mysql/5.7.html①、选择linux版的②、选择64bit,根据自己的情况来看③、选择下载tar包④、点击下载⑤、等待下载完二、上传到服务器上传到服务器有好几种方法,任意采用一种就可以......
  • 5G通信技术:具备百万连接/平方公里的设备连接能力
    5G是指第五代移动通信技术,是具有高速率、低时延和大连接特点的新一代宽带移动通信技术。5G通讯设施是实现人机物互联的网络基础设施。与4G相比,5G的速度更快,时延更短,连接能力更强。5G移动网络的速度通常会比4G更快。在某些情况下,5G的峰值速率可以达到10-20Gbit/s,以满足高清视频、虚......
  • 【单片机】初次实验:Keil51的使用
    哔哩哔哩/CSDN/博客园:萌狼蓝天延时器delay(intcount){ inti,j; for(i=0;i<count;i++){ for(j=0;j<1000;j++); }}瞧一瞧题目要求:P0口接八个发光二极管,先让后面四个灯亮,再让前面四个灯亮,循坏#include<REGX51.H>delay(intcount){ inti,j; for(i=0;i<count;i+......
  • 基于WebGL+HTML5的智慧粮仓3D可视化系统
    仓廪实、天下安。民之所需,行之所至。建设背景古往今来,粮食问题历来是安邦定国的头等大事。“粮食”作为人类生活的生命之源,在人们的日常生活中起着决定性的作用。收获的粮食归仓,仓储工作是稳定“大国粮仓”的重要环节,当粮食收购后,如何让丰收成果颗粒归仓,减少损失,并确保粮食储藏质量......
  • Ubuntu18.04安装mysql5.7.27
    步骤如下:1.获取mysql-apt-config工具wgethttps://dev.mysql.com/get/mysql-apt-config_0.8.11-1_all.deb2.安装config工具第一项点进去选择5.7(默认是8.0)dpkg-imysql-apt-config_0.8.11-1_all.deb3.更新源sudoapt-getupdate4.安装mysqksudoapt-getinstallmysql-server......
  • 计算x的平方根
    publicclassSolution{publicintmySqrt(inta){if(a<2)returna;intstart=2;intend=a/2;intmid=0;while(start<=end){mid=start+(end-start)/2;longnum=(lo......
  • 平方数和立方数
    题目描述已知两个正整数a和b,求在a与b之间(包含a和b)的所有整数中平方数和立方数的个数。平方数指的是可以写成某个整数的平方,如4,16,25,81,…;立方数指的是可以写成某个整数的立方,如27,64,125,…输入格式多组数据(不超过100000组),每组数据2个整数a,b。(1≤a≤b≤1000000)。输出格式......
  • centos7安装mysql5.7(转)
    https://cloud.tencent.com/developer/article/2226207安装步骤https://www.cnblogs.com/key-l731/p/9551400.html查看本机安装情况  1.下载MySQLyum包wgethttp://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm复制2.安装MySQL源rpm-Uvhmysql5......
  • acwing367证明
    首先,\(max(p,q)\)是下界,因为连一条边最多只能减少一个零入度点和一个零出度点,而最终的图不可能有哪怕一个零出度点或者零入度点(最后的图刚好就是一个点)根据这个下界,我们也很容易可以构造出来一种方法,让零出度点和另一个SCC的零入度点相连即可,就像下面一样(红色边是添加的边)......