1. 程式人生 > >leetcode 367. 有效的完全平方數 python

leetcode 367. 有效的完全平方數 python

給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。

說明:不要使用任何內建的庫函式,如  sqrt

示例 1:

輸入:16
輸出:True

示例 2:

輸入:14
輸出:False

二分法:

class Solution:
    def isPerfectSquare(self, num):
        """
        :type num: int
        :rtype: bool
        """
        left = 1
        right = num
        while left <= right:
            mid = (left + right)//2
            if mid**2 > num:
                right = mid -1
            elif mid**2 < num:
                left = mid +1
            else:
                return True
        return False

相關推薦

leetcode 367. 有效完全平方 python

給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如  sqrt。 示例 1: 輸入:16 輸出:Tr

279.完全平方-python.md

題目 給定正整數 n,找到若干個完全平方數(比如 1, 4, 9, 16, …)使得它們的和等於 n。你需要讓組成和的完全平方數的個數最少。 示例: 示例 1: 輸入: n = 12 輸出: 3 解釋: 12 = 4 + 4 + 4. 示例 2: 輸入:

LeetCode 279)完全平方 [簡單dp]

279. 完全平方數 給定正整數 n,找到若干個完全平方數(比如 1, 4, 9, 16, …)使得它們的和等於 n。你需要讓組成和的完全平方數的個數最少。 示例 1: 輸入: n = 12 輸出: 3 解釋: 12 = 4 + 4 + 4. 示例 2: 輸入: n = 13

[LeetCode] Perfect Squares 完全平方

Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 16, ...) which sum to n. For example, given n = 12, r

[leetcode]Python實現-367.有效完全平方

367.有效的完全平方數 描述 給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 注意:不要使用任何內建的庫函式,如 sqrt。 示例 輸入: 16 輸出: True

Leetcode 367. 有效完全平方 C++

題目: 給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如  sqrt。 示例 1: 輸入:16 輸出:True 示例 2: 輸入:14 輸出:False 思路:

Leetcode 367——有效完全平方(C++)

給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。注意:不要使用任何內建的庫函式,如  sqrt。示例 1:輸入: 16 輸出: True示例 2:輸入: 14 輸出: False老老實實的去遍歷的話會超時,故用

LeetCode刷題記錄——第367題(有效完全平方

題目描述 給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如 sqrt。 示例 1: 輸入:16 輸出:True 示例 2: 輸入:14 輸出:F

367. 有效完全平方

題目 給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如 sqrt。 示例 1: 輸入:16 輸出:True 示例 2: 輸入:14 輸出:False 思路 方法一:使

367.有效完全平方

給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如  sqrt。 示例 1: 輸入:16 輸出:True 示例 2: 輸入:14 輸出:False class Solu

Python經典練習題1:一個整數,它加上100後是一個完全平方,再加上168又是一個完全平方,請問該是多少?

span range pytho 能夠 break clas 完全平方數 imp 經典 Python經典練習題 網上能夠搜得到的答案為: for i in range(1,85): if 168 % i == 0: j = 168 / i;

LeetCode 279. 完全平方(Perfect Squares)

-a 題目 col min lee 狀態 res style turn 題目描述 給定正整數 n,找到若幹個完全平方數(比如 1, 4, 9, 16, ...)使得它們的和等於 n。你需要讓組成和的完全平方數的個數最少。 示例 1: 輸入: n = 12 輸出: 3

leetcode367:有效完全平方

思想: 1.定義變數l和h,存放中間變數 2.將l加h整除2等於mid,然後算出mid的平方t,最後比較t和num的大小。 3.若t<num,l等於mid+1;若t>num,h等於mid-1;若t=num,返回True 4.直到迴圈結束,返回False class S

【JS】有效完全平方 #數學 #二分查詢

給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如 sqrt。 示例 1: 輸入:16 輸出:True 示例 2: 輸入:14 輸出:False 示例 3: 輸入:808201 輸出:

LeetCode學習記錄(3)----完全平方

給定正整數 n,找到若干個完全平方數(比如 1, 4, 9, 16, ...)使得它們的和等於 n。你需要讓組成和的完全平方數的個數最少。 示例 1: 輸入: n = 12 輸出: 3 解釋: 12 = 4 + 4 + 4. 示例 2: 輸入: n = 13 輸出:

2018.11.5 有效完全平方

給定一個正整數 num,編寫一個函式,如果 num 是一個完全平方數,則返回 True,否則返回 False。 說明:不要使用任何內建的庫函式,如  sqrt。 示例 1: 輸入:16 輸出:True 示例 2: 輸入:14 輸出:False class Solu

LeetCode367題:有效完全平方

這道題就是讓你寫一個函式用來判斷一個是num是否為某個數m的平方的。 解法一:暴力搜尋法 判斷一個數是不是某個數的平方,暴力一點的想法,就是從i = 1開始迴圈,如果i*i小於num,則i++;如果等於num,則返回true;如果大於num,則返回false。 public s

[LeetCode] Valid Perfect Square 檢驗完全平方

Given a positive integer num, write a function which returns True if num is a perfect square else False. Note: Do not use any built-in library function

python中判斷是否為完全平方(在9999平方的範圍內)

# -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ num=input("Please inp

[Leetcode]279.完全平方

最開始的時候,我想到的動態方程很簡單,就是 dp[i]=min(dp[i],dp[i-平方數]+1) 其中i-平方數一定要大於0要不然就會越界。這個思路很簡單,舉個例子: dp[5]=min(dp[5-1^2]+1,dp[5-2^2]+1,dp[5]) 這表示5可以如下組合: dp[5] = min