j

jaryue

V1

2023/03/19阅读:15主题:默认主题

leecode263丑数(go实现)

leecode 263

题目描述

丑数 就是只包含质因数 2、3 和 5 的正整数。

给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。

解题思路

1,读题,我开始就没注意到正整数,所以浪费了一些时间 if n<=0 return false\

if n <= 0 {
  return false
 }

2.在1~10之间只有7不是丑数,所以n可以与235中任何一个数整除,就除以这个数,如果都不行就返回false直到n<=10时
1:

if n%5 == 0 {//判断是否能被5整除
   n = n / 5//将此数除5
  } else if n%3 == 0 {//判断是否能被3整除
   n = n / 3//将此数除3
  } else if n%2 == 0 {//判断是否能被2整除
   n = n / 2//将此数除2
  } else {
   return false//都不能被整除时说明没有235中任何一种公约数返回false
  }

判断n==7?return false
else return true

if n == 7 {//如果为7则不是丑数
  return false
 }
 return true

代码示例

func isUgly(n int) bool {
 if n <= 0 {
  return false
 }
 for n > 10 {
  if n%5 == 0 {
   n = n / 5
  } else if n%3 == 0 {
   n = n / 3
  } else if n%2 == 0 {
   n = n / 2
  } else {
   return false
  }
 }
 if n == 7 {
  return false
 }
 return true
}

执行结果

执行用时: 4 ms , 在所有 Go 提交中击败了 39.62% 的用户 内存消耗: 1.9 MB , 在所有 Go 提交中击败了 100.00% 的用户 通过测试用例: 1013 / 1013

更多

分类:

后端

标签:

后端

作者介绍

j
jaryue
V1