当前位置: 首页 > news >正文

LeetCode题解:633. 平方数之和,双指针,JavaScript,详细注释

原题链接:
https://leetcode.cn/problems/sum-of-square-numbers/

解题思路:

  1. ab一定是000c\sqrt cc之间的某个值。
  2. a的初始值设为0b的初始值设为c\sqrt ccb必须为整数。
  3. ab向中间逼近,查找满足条件的值。
  4. 由于ab是可以交换的,两者相遇时,就查找了所有可能的值。
  5. a2+b2>ca^2+b^2>ca2+b2>c时,b--
  6. a2+b2<ca^2+b^2<ca2+b2<c时,a++
/*** @param {number} c* @return {boolean}*/
var judgeSquareSum = function (c) {let a = 0 // a从最小值开始查找let b = Math.floor(Math.sqrt(c)) // b从最大值开始查找,需要保证初始值是整数// a和b可交换,因此只要搜索到两者相遇即可while (a <= b) {// 计算当前的a^2 + b^2值let curr = a ** 2 + b ** 2// 如果curr等于c,表示找到相应整数if (curr === c) {return true}// 如果curr大于c,减小b,向目标值逼近else if (curr > c) {b--}// 如果curr小于c,增大a,向目标值逼近else {a++}}// 如果退出循环,表示未找到a和breturn false
}

相关文章:

LeetCode题解:633. 平方数之和,双指针,JavaScript,详细注释

原题链接&#xff1a; https://leetcode.cn/problems/sum-of-square-numbers/ 解题思路&#xff1a; a和b一定是000到c\sqrt cc​之间的某个值。将a的初始值设为0。b的初始值设为c\sqrt cc​&#xff0c;b必须为整数。a和b向中间逼近&#xff0c;查找满足条件的值。由于a和b是…...

Keil编译头文件iec_std_functions.h错误解决

Keil 编译IEC61131-3库&#xff0c;头文件&#xff0c;大量出现以下错误&#xff1b; cast to type &#xff1f; is not allowed compiling resource1.c... ..\PLC\rts\matiec\lib\C\iec_std_functions.h(192): error: #119: cast to type "TIME" is not allowed…...

2022 赣育杯 CTF --- Crypto Lost_N wp

文章目录前言题目解题过程解题代码前言 这是去年江西省赛一道有点小坑的密码题&#xff0c;当时没做出来&#xff0c;今天回想起来重新做一下并且记录一下。 题目 Lost_N.py import gmpy2 from Crypto.Util.number import * # part1 flag bSangFor{} d getPrime(435) cou…...

【趋势分析方法三】MATLAB代码实现TFPW-MK检验

目前水文时间序列趋势分析的方法很多&#xff0c;主要分为参数检验和非参数检验两大类&#xff1a; 参数检验中常用的有线性回归法、滑动平均法、累积距平法等非参数检验则主要包括Mann-Kendal&#xff08;MK&#xff09;法和 Spearman 秩次相关法等 虽然从理论上讲&#xff…...

一文学会 Spring 整合 MyBatis

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

ElasticSearch - 文档 | 索引文档 | 检索文档 | 创建索引并指明映射

文章目录1. ElasticSearch是面向文档的2. 索引员工文档3. 检索员工文档4. 映射1. ElasticSearch是面向文档的 在应用程序中对象很少只是一个简单的键和值的列表。通常&#xff0c;它们拥有更复杂的数据结构&#xff0c;可能包括日期、地理信息、其他对象或者数组等。 Elastic…...

SQL中的DML、DDL、DCL分别是什么意思

SQL命令的分类 数据定义语言 DDL&#xff08;DataDefinition Language&#xff09; 是 SQL 语言集中负责数据结构定义。 DDL 的核心指令是CREATE、ALTER、DROP。 操作的对象包括&#xff1a;库、表、视图、索引等。 如&#xff1a;CREATE TABLE ; ALTER INDEX; DROP VIEW; 数据…...

kubeasz部署k8s高可用集群

前言&#xff1a;如无特殊说明&#xff0c;所有操作都用root账号在所有节点执行。 说明&#xff1a;kubeasz是一款国产开源的k8s部署软件&#xff0c;采用ansible role的部署方式&#xff0c;部署k8s二进制集群。熟悉ansible role的用该软件部署k8s方便快捷。 一、机器 deplo…...

2022年工程机械出口专题研究【重工】

文章目录2022年工程机械出口专题研究1、中国是全球工程机械第一大市场&#xff0c;竞争力逐步提升2、工程机械出口高增&#xff0c;市场分布趋于多元&#xff0c;企业营收获益3、海外市场高速增长原因为何&#xff1f;4、海外市场增长动能预测附件&#xff1a;2022年工程机械出…...

[python入门(51)] - python时间日期格式time和datetime

目录 ❤ 预备知识 ❤ UTC time Coordinated Universal Time ❤ epoch time ❤ timestamp&#xff08;时间戳&#xff09; ❤ stamptime时间戳 ❤ struct_time时间元组 ❤ format time 格式化时间 ❤ time模块​编辑 ❤ 获取当前时间的方法 ❤ 当传入默认参…...

别担心ChatGPT距离替代程序猿还有距离

经过多天对chat-GPT在工作的使用&#xff0c;我得出一个结论&#xff0c;它睁眼瞎说就算了&#xff0c;它还积极认错&#xff0c;绝不改正&#xff0c;错误答案极具误导性&#xff0c;啥也不说了&#xff0c;请看图。 经过N次较量它固执的认为 0011 1101 0110 0101在最高位是左…...

SpringBoot项目打包部署到阿里云服务器、通过Maven插件制作Docker镜像、部署项目容器、配置生产环境

制作通用模块jar包 通用模块不是运行的&#xff0c;而且要被其他模块引入的&#xff0c;所以该模块不能采用springboot打包方式制作jar包&#xff0c;否则其他模块无法引入通用模块。 1、修改通用模块&#xff0c;设置模块为非Springboot项目 <?xml version"1.0&qu…...

OpenGov的首个方案已上线Moonriver

随着公投128的通过&#xff0c;作为Runtime 2100的一部分&#xff0c;Moonbeam在Moonriver上推出了OpenGov。Moonbeam上的OpenGov部署将从Moonriver开始&#xff0c;以获得社区反馈。未来将举行公投&#xff0c;让社区来决定OpenGov如何发展并转移至Moonbeam。 Moonriver上的O…...

(三十一)大白话MySQL如果事务执行到一半要回滚怎么办?再探undo log回滚日志原理

之前我们已经给大家深入讲解了在执行增删改操作时候的redo log的重做日志原理&#xff0c;其实说白了&#xff0c;就是你对buffer pool里的缓存页执行增删改操作的时候&#xff0c;必须要写对应的redo log记录下来你做了哪些修改 如下图所示&#xff1a; 这样万一要是你提交事…...

机器学习-基于KNN及其改进的汉字图像识别系统

一、简介和环境准备 knn一般指邻近算法。 邻近算法&#xff0c;或者说K最邻近&#xff08;KNN&#xff0c;K-NearestNeighbor&#xff09;分类算法是数据挖掘分类技术中最简单的方法之一。而lmknn是局部均值k最近邻分类算法。 本次实验环境需要用的是Google Colab和Google Dr…...

Zebec生态持续深度布局,ZBC通证月内翻倍或只是开始

“Zebec生态近日利好不断&#xff0c;除了推出了回购计划外&#xff0c; Nautilus Chain 、Zebec Labs等也即将面向市场&#xff0c;都将为ZBC通证深度赋能。而ZBC通证涨幅月内突破100%&#xff0c;或许只是开始。”近日&#xff0c;流支付生态Zebec生态通证ZBC迎来了大涨&…...

Leetcode.1238 循环码排列

题目链接 Leetcode.1238 循环码排列 Rating &#xff1a; 1775 题目描述 给你两个整数 n和 start。你的任务是返回任意 (0,1,2,,...,2^n-1)的排列 p&#xff0c;并且满足&#xff1a; p[0] startp[i]和 p[i1]的二进制表示形式只有一位不同p[0]和 p[2^n -1]的二进制表示形式也…...

spring boot的包扫描范围

目录标题一、误解二、正确的理解三、不同包也能扫描到Bean的方法一、误解 一开始我一直以为spring boot默认的包扫描范围是启动类的同级目录和子目录下的Bean。其实正真是与启动类在同个包以及子包下的Bean。 我一直误解了包的概念&#xff0c;包并不是只文件夹&#xff08;文…...

常青科技冲刺A股上市:研发费用率较低,关联方曾拆出资金达1亿元

近日&#xff0c;江苏常青树新材料科技股份有限公司&#xff08;下称“常青科技”或“常青树科技”&#xff09;递交招股书&#xff0c;准备在上海证券交易所主板上市。本次冲刺上市&#xff0c;常青科技计划募资8.50亿元&#xff0c;光大证券为其保荐机构。 据招股书介绍&…...

【Linux】工具(1)——yum

好久不见&#xff0c;让大家久等啦~最近开学被一系列琐事所耽误了&#xff0c;接下来会进入稳定更新状态~话不多说&#xff0c;在我们了解Linux基本内容之后&#xff0c;我们的目的是要在Linux环境下进行软硬件开发&#xff0c;在这个过程中我们会用到一系列工具&#xff0c;例…...

Spring Cloud AWS 实战教程:构建高可用 SQS 消息队列应用 [特殊字符]

Spring Cloud AWS 实战教程&#xff1a;构建高可用 SQS 消息队列应用 &#x1f680; 【免费下载链接】spring-cloud-aws The New Home for Spring Cloud AWS 项目地址: https://gitcode.com/gh_mirrors/sp/spring-cloud-aws Spring Cloud AWS 是一个强大的开源框架&…...

告别元素变动导致的报错:探索自动化测试脚本的 AI“自愈”能力

前言:一个所有测试人都经历过的噩梦 周三晚上十一点,CI/CD流水线再次亮起红灯。 你打开日志,满屏的NoSuchElementException扑面而来。仔细一看——前端团队在昨天的版本中重构了登录页面的DOM结构,原本的#login-btn变成了#signin-button-v2,30个测试用例因此全军覆没。 …...

别再手动编译了!Matlab一键调用CEC2017测试函数的完整配置指南(附30个函数调用示例)

别再手动编译了&#xff01;Matlab一键调用CEC2017测试函数的完整配置指南&#xff08;附30个函数调用示例&#xff09; 算法研究者们常常需要借助标准测试函数来验证优化算法的性能&#xff0c;而CEC2017测试函数集因其复杂性和多维度的挑战性&#xff0c;成为评估算法鲁棒性的…...

PCL 基于强度的双边滤波【2026最新版】

目录 一、算法原理 1、计算步骤 2、算法源码 3、函数解析 4、参考文献 二、代码实现 三、结果展示 四、滤波后未发生变化的原因 五、解决办法 六、结果展示 七、相关链接 本文由CSDN点云侠原创,博客长期更新,本文最近一次更新时间为:2026年5月24日。 一、算法原理 1、计算…...

3步快速部署:智能茅台抢购平台的终极自动化解决方案

3步快速部署&#xff1a;智能茅台抢购平台的终极自动化解决方案 【免费下载链接】campus-imaotai i茅台app自动预约&#xff0c;每日自动预约&#xff0c;支持docker一键部署&#xff08;本项目不提供成品&#xff0c;使用的是已淘汰的算法&#xff09; 项目地址: https://gi…...

5步彻底解决Windows DLL加载冲突:UE4SS系统故障排查指南

5步彻底解决Windows DLL加载冲突&#xff1a;UE4SS系统故障排查指南 【免费下载链接】RE-UE4SS Injectable LUA scripting system, SDK generator, live property editor and other dumping utilities for UE4/5 games 项目地址: https://gitcode.com/gh_mirrors/re/RE-UE4SS…...

3大突破性功能:用HiveWE革新你的魔兽争霸III地图创作体验

3大突破性功能&#xff1a;用HiveWE革新你的魔兽争霸III地图创作体验 【免费下载链接】HiveWE A Warcraft III world editor. 项目地址: https://gitcode.com/gh_mirrors/hi/HiveWE 还在为传统魔兽争霸III编辑器缓慢的加载速度和复杂的操作界面而烦恼吗&#xff1f;Hive…...

解锁你的音乐收藏:浏览器端音频解密完整指南

解锁你的音乐收藏&#xff1a;浏览器端音频解密完整指南 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库&#xff1a; 1. https://github.com/unlock-music/unlock-music &#xff1b;2. https://git.unlock-music.dev/um/web 项目地址: https://gitcod…...

收藏干货|2026年程序员转型大模型指南,8个高薪岗位小白也能入局

分享一则身边真实职场经历&#xff0c;想必能戳中当下不少陷入职业迷茫的开发从业者。 同窗老友深耕Java后端开发整整六年&#xff0c;常年扎根业务开发模块&#xff0c;算得上行业内经验老道的技术老手。可从去年年初开始&#xff0c;他的职业焦虑感愈发强烈。传统业务开发同质…...

5分钟掌握m4s-converter:将B站缓存视频无损转换为MP4的终极指南

5分钟掌握m4s-converter&#xff1a;将B站缓存视频无损转换为MP4的终极指南 【免费下载链接】m4s-converter 一个跨平台小工具&#xff0c;将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾在B站缓存了…...