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

LCP 633 平方数之和 [leetcode - 8]

最近是在研究双指针啊,leetcode刷的题都是这方面的。都记录在最近的文章里,大家有兴趣可以去我主页看看

LCP633 平方数之和

给定一个非负整数 c ,你要判断是否存在两个整数 ab,使得 a2 + b2 = c

示例 1:

输入:c = 5
输出:true
解释:1 * 1 + 2 * 2 = 5
方法1:食我双指针啊

显然,这里是在给定范围内找找两个数字满足条件,双指针再合适不过了

//leetcode官方题解
class Solution {
public:bool judgeSquareSum(int c) {long left = 0;long right = (int)sqrt(c);while (left <= right) {long sum = left * left + right * right;if (sum == c) {return true;} else if (sum > c) {right--;} else {left++;}}return false;}
};

这个方法是leetcode官方题解,效果如下

在这里插入图片描述

方法二,直接判断不挺好
class Solution {
public:bool judgeSquareSum(int c) {//对于单独情况,分个if就行,不然对所有情况编程,徒增开销if (c == 0) return true;//这里还有一种写法,不过每次都要多加一次计算,性能较差/*for(int a=1;a*a<=c;a++)大家对比一下,是否多了一次计算?每个循环中多一次计算,这个对效率的拖后腿是不能多想*/int sqc = (int)(sqrt(c));for (int a = 1; a <= sqc; a++){int b = (int)(sqrt(c - a * a));if (a * a + b * b == c)   return true;}return false;}
};

这是俺的直接循环比较法
s

http://www.lryc.cn/news/430453.html

相关文章:

  • c语言试题及答案
  • python实现链表
  • Linux Shell 编程基础入门(一)
  • 大白话讲微服务的灾难性雪崩效应
  • 配置 K3s 访问私有镜像仓库
  • 数学建模之数据分析【七】:对Pandas DataFrame 进行切片
  • 删除 Docker 容器的日志文件
  • DevOps入门(上)
  • 基于Python的网易民谣歌词数据分析的设计与实现
  • 趋动科技联合云轴科技推出GPU云原生超融合解决方案
  • Dooring智图,一款开箱即用的图片海报编辑器
  • 苹果macbook电脑怎么玩《黑神话:悟空》游戏教程来了
  • git 目录提交代码
  • 多商户商品下单限购问题修复
  • eNSP 华为ACL配置
  • 实现高效研发运营一体化:深度落地DevOps解决方案的探索与实践
  • Milvus向量数据库-磁盘索引简介
  • Web漏洞介绍和Sql注入漏洞
  • 【Eureka】Eureka 介绍与实战
  • 密码管理系统的自动化与集成:重塑安全与效率的双重飞跃
  • Outlook如何精确搜索邮件?
  • MambaCSR: 使用SSM的双交错扫描压缩图像超分辨率
  • 【C++】深入解析C/C++内存管理:new与delete的使用及原理
  • 递归--数据结构--黑马
  • 【3.1】贪心算法-解分发饼干
  • 解决 Error running ‘Application‘: Command line is too long.
  • 衡量与归因将是Netflix程序化广告业务的首要任务
  • 关于如何在已有qt项目中添加该项目的单元测试工程
  • 深度剖析数字媒体产业链的无限潜力与创新生态
  • 集团数字化转型方案(十二)