Press "Enter" to skip to content

Posts published in “Math”

花花酱 LeetCode 263. Ugly Number

题目大意:如果一个数的素数因子只有2,3,5,我们称它为丑数。让你判断一个数是不是丑数。

Problem:

Write a program to check whether a given number is an ugly number.

Ugly numbers are positive numbers whose prime factors only include 2, 3, 5. For example, 6, 8 are ugly while 14 is not ugly since it includes another prime factor 7.

Note that 1 is typically treated as an ugly number.

 

Idea:

Math

Solution:

C++

Related Problems:

花花酱 LeetCode 754. Reach a Number

题目大意:第i时刻可以移动+i,-i单位距离。初始在原点,问最少对少时间可以移动到target坐标。

Problem:

You are standing at position 0 on an infinite number line. There is a goal at position target.

On each move, you can either go left or right. During the n-th move (starting from 1), you take n steps.

Return the minimum number of steps required to reach the destination.

Example 1:

Example 2:

Note:

  • target will be a non-zero integer in the range [-10^9, 10^9].

 


Idea:

Math

 

Time complexity: O(sqrt(target))

Space complexity: O(1)

O(1)

 

花花酱 LeetCode 367. 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 such as sqrt.

Example 1:

Example 2:

Idea:

Binary search

Solution:

C++

Time complexity: O(log(num))

Space complexity: O(1)

 

花花酱 LeetCode 728. Self Dividing Numbers

Problem:

self-dividing number is a number that is divisible by every digit it contains.

For example, 128 is a self-dividing number because 128 % 1 == 0128 % 2 == 0, and 128 % 8 == 0.

Also, a self-dividing number is not allowed to contain the digit zero.

Given a lower and upper number bound, output a list of every possible self dividing number, including the bounds if possible.

Example 1:

Note:

  • The boundaries of each input argument are 1 <= left <= right <= 10000.




Idea:

Brute Force

Time Complexity: O(n)

Space Complexity: O(1)

 

Solution:

C++

String

 

Related Problems:

花花酱 LeetCode 268. Missing Number

Problem:

Given an array containing n distinct numbers taken from 0, 1, 2, …, n, find the one that is missing from the array.

For example,
Given nums = [0, 1, 3] return 2.

Note:
Your algorithm should run in linear runtime complexity. Could you implement it using only constant extra space complexity?

 

Idea:

sum / xor

Solution: