每日经典算法题(十三) 逆推算法(平方根相关)
每日经典算法题(十三) 逆推算法(平方根相关)
平方根:Square Root
题目
有一个整数,它加上 100 后是一个 完全平方数 ,再加上 168 又是一个 完全平方数 ,请问该数是多少?
程序分析
首先确定这个数的限定条件,然后循环遍历判断即可。
思路
用数学的思路来看,可列式:
- a² = y + 100
- b² = y + 100 + 168
因为 a,b 均为整数,所以 y + 100 的平方根为整数,y + 100 + 168 的平方根也为整数。
由于完全平方数 >= 0,所以 y + 100 >= 0,即 y >= -100。
这里为了减轻计算的压力,将上限限定为 100000 即可。
Java 中 Math 包为我们提供了 sqrt() 方法来计算平方根,利用 for 循环遍历 -100 到 100000 之间的整数,然后逐一判断即可。
代码示例
public class Q13_SquareRootAndCalculation {public static void main(String[] args) {for (int i=-100;i<=100000;i++){if (Math.sqrt(i+100)%1==0 && Math.sqrt(i+100+168)%1==0){System.out.print(i+"\t");}}}
}
输出结果
-99 21 261 1581
- Day13 打卡成功!
每日经典算法题(十三) 逆推算法(平方根相关)相关推荐
- 每日经典算法题(十六) 九九乘法表
每日经典算法题(十六) 九九乘法表 九九乘法表:Multiplication Table 99 题目 输出 9 * 9 口诀 程序分析 分行与列考虑,共9行9列,i 控制行,j 控制列 思路 非常经典 ...
- 每日经典算法题(四) 分解质因数
每日经典算法题(四) 分解质因数 分解质因数:Decomposition Quality Factor 题目 将一个正整数分解质因数.例如:输入 90,打印出:90 = 2 * 3 * 3 * 5 程 ...
- python代码基础题-python每日经典算法题5(基础题)+1(中难题)
现在,越来越多的公司面试以及考验面试对算法要求都提高了一个层次,从现在,我讲每日抽出时间进行5+1算法题讲解,5是指基础题,1是指1道中等偏难.希望能够让大家熟练掌握python的语法结构已经一些高级 ...
- python每日经典算法题5(基础题)+1(中难题)
现在,越来越多的公司面试以及考验面试对算法要求都提高了一个层次,从现在,我讲每日抽出时间进行5+1算法题讲解,5是指基础题,1是指1道中等偏难.希望能够让大家熟练掌握python的语法结构已经一些高级 ...
- python每日经典算法题5(基础题)+1(较难题)
一:基础算法题5道 1.阿姆斯特朗数 如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数.判断用户输入的数字是否为阿姆斯特朗数. (1)题目分析:这里要先得到该数是多少位的,然后再把 ...
- C++经典算法题-循序搜寻法(使用卫兵)
42.Algorithm Gossip: 循序搜寻法(使用卫兵) 说明 搜寻的目的,是在「已排序的资料」中寻找指定的资料,而当中循序搜寻是最基本的搜寻法, 只要从资料开头寻找到最后,看看是否找到资料即 ...
- 经典算法题每日演练——第一题 百钱买百鸡
经典算法题每日演练--第一题 百钱买百鸡 原文:经典算法题每日演练--第一题 百钱买百鸡 百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, ...
- 经典算法题每日演练——第七题 KMP算法
原文:经典算法题每日演练--第七题 KMP算法 在大学的时候,应该在数据结构里面都看过kmp算法吧,不知道有多少老师对该算法是一笔带过的,至少我们以前是的, 确实kmp算法还是有点饶人的,如果说红黑树 ...
- 经典算法题每日演练——第六题 协同推荐SlopeOne 算法
原文:经典算法题每日演练--第六题 协同推荐SlopeOne 算法 相信大家对如下的Category都很熟悉,很多网站都有类似如下的功能,"商品推荐","猜你喜欢&quo ...
最新文章
- 数据结构之折半插入排序图文详解及代码(C++实现)
- 【转载】C ++ 基础 指针 引用
- 关于ViewGroup中requestDisallowInterceptTouchEvent的用法
- Smooth Delivery:如何减少网络拥塞?
- html table设置行高_字号与行高
- 实测java 与php运行速度比较
- 是Excel的图,不!是R的图
- anaconda报错 ImportError: No module named conda.cli
- 豆瓣9.4!《深度学习入门》笔记总结,带你从感知机入门深度学习!(连载)...
- WindowsServer2003 MSSQL安全
- 实验7 OpenGL光照
- cad解除块的快捷命令_cad隐藏块快捷键是什么,Auto CAD隐藏块快捷键是什么?
- MySQL中的BETWEEN...AND的用法
- Leetcode 312 打气球 Burst Balloons C++ 史上最详细题解系列
- matlab中黄金分割法,优化算法之黄金分割算法 - Matlab
- 黑客白皮书:如何成为一名黑客(附FAQ)
- idea打开多个文件多排显示
- 计算机科学与技术毕业设计源码,计算机科学与技术专业(毕业论文)基于网络的同学录设计与实现源代码.doc...
- ASP.NET药品销售ERP管理系统源码【免费分享】
- linux入门篇——gcc的基本用法