Python3 完全平方數(shù)案例
題目
一個(gè)整數(shù),它加上100后是一個(gè)完全平方數(shù),再加上168又是一個(gè)完全平方數(shù),請(qǐng)問(wèn)該數(shù)是多少?
程序分析
因?yàn)?68對(duì)于指數(shù)爆炸來(lái)說(shuō)實(shí)在太小了,所以可以直接省略數(shù)學(xué)分析,用最樸素的方法來(lái)獲取上限:
n=0 while (n+1)**2-n*n<=168: n+=1 print(n+1)
補(bǔ)充:用Python實(shí)現(xiàn)"有效的完全平方數(shù)"的一種方法
給一個(gè)正整數(shù)num,寫一個(gè)函數(shù)判斷它是否是一個(gè)完全的平方數(shù),是則返回True,不是返回False
注意:不要使用任何內(nèi)嵌的函數(shù),如sqrt
Example 1
Input: 16 Output: true Example 2: Input: 14 Output: false
1:二分法
def isPerfectSquare(self, num):
"""
:type num: int
:rtype: bool
"""
low = 1
high = num
while low < high:
mid = (low + high) // 2
if mid * mid == num:
return True
elif mid * mid < num:
low = mid + 1
else:
high = mid - 1
return low * low == num
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
使用已經(jīng)得到的keras模型識(shí)別自己手寫的數(shù)字方式
這篇文章主要介紹了使用已經(jīng)得到的keras模型識(shí)別自己手寫的數(shù)字方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
簡(jiǎn)析Python函數(shù)式編程字符串和元組及函數(shù)分類與高階函數(shù)
這篇文章主要介紹了Python函數(shù)式編程中的字符串、元組及函數(shù)分類與高階函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-09-09
Python turtle畫圖庫(kù)&&畫姓名實(shí)例
今天小編就為大家分享一篇Python turtle畫圖庫(kù)&&畫姓名實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
基于python實(shí)現(xiàn)MUI區(qū)域滾動(dòng)
這篇文章主要介紹的是python實(shí)現(xiàn)MUI區(qū)域滾動(dòng),MUI提供了區(qū)域滾動(dòng)的組件,使用時(shí)遵循DOM結(jié)構(gòu)就可以,下面來(lái)看看文章具體的實(shí)現(xiàn)內(nèi)容,需要的朋友可以參考一下2021-11-11
Python的bit_length函數(shù)來(lái)二進(jìn)制的位數(shù)方法
今天小編就為大家分享一篇Python的bit_length函數(shù)來(lái)二進(jìn)制的位數(shù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08
Python opencv醫(yī)學(xué)處理的實(shí)現(xiàn)過(guò)程
這篇文章主要介紹了Python opencv醫(yī)學(xué)處理的實(shí)現(xiàn)過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05

