• leetcode263


    public class Solution {
        private bool Judge(int x)
            {
                if (x <= 1)
                {
                    return false;
                }
                int bound = Convert.ToInt32(Math.Sqrt(x));
    
                for (int i = 2; i <= bound; i++)
                {
                    if (x % i == 0)
                    {
                        return false;
                    }
                }
                return true;
            }
    
            //素数筛法
            private List<int> init(int num)
            {
                var prime = new List<int>();
                bool[] mark = new bool[num + 1];
                for (int i = 1; i <= num; i++)
                {
                    mark[i] = false;
                }
    
                for (int i = 2; i <= num; i++)
                {
                    if (mark[i])//排除2,3,5
                    {
                        continue;
                    }
                    prime.Add(i);
                    for (int j = i * i; j < num + 1; j += i)
                    {
                        mark[j] = true;
                    }
                }
                return prime;
            }
    
            public bool IsUgly(int num)
            {
                if (num <= 0) { return false; }
                if (num == 1) { return true; }
                if (num % 2 == 0)
                {
                    return IsUgly(num / 2);
                }
                if (num % 3 == 0)
                {
                    return IsUgly(num / 3);
                }
                if (num % 5 == 0)
                {
                    return IsUgly(num / 5);
                }
                return false;
            }
    }

    https://leetcode.com/problems/ugly-number/#/description

    本题同剑指Offer49

  • 相关阅读:
    蟠桃记
    考新郎
    有假币
    年会抽奖
    发邮件
    进制回文数
    数位和
    外星人的语言
    一的个数
    继承
  • 原文地址:https://www.cnblogs.com/asenyang/p/6736922.html
Copyright © 2020-2023  润新知