首页 > 其他分享 >leedcode-

leedcode-

时间:2024-04-25 19:25:30浏览次数:21  
标签:return res self leedcode 列表 倍数 append

自己写的

from typing import List

class Solution:
    def fizzBuzz(self, n: int) -> List[str]:
        # 初始化结果列表
        res = []
        # FizzBuzz 对应的字符串列表
        myli = ["Fizz", "Buzz", "FizzBuzz"]
        
        # 遍历1到n的每个数字
        for i in range(1, n+1):
            # 如果同时是3的倍数和5的倍数
            if self.is3times(i) and self.is5times(i):
                # 添加FizzBuzz到结果列表
                res.append(myli[2])
            # 如果是3的倍数但不是5的倍数
            elif self.is3times(i) and not self.is5times(i):
                # 添加Fizz到结果列表
                res.append(myli[0])
            # 如果是5的倍数但不是3的倍数
            elif not self.is3times(i) and self.is5times(i):
                # 添加Buzz到结果列表
                res.append(myli[1])
            # 如果既不是3的倍数也不是5的倍数
            else:
                # 添加数字的字符串形式到结果列表
                res.append(f"{i}")
        # 返回结果列表
        return res
    
    # 判断是否是3的倍数
    def is3times(self, n):
        if n % 3 == 0:
            return True
        else:
            return False
    
    # 判断是否是5的倍数
    def is5times(self, n):
        if n % 5 == 0:
            return True
        else:
            return False

 

标签:return,res,self,leedcode,列表,倍数,append
From: https://www.cnblogs.com/yyyjw/p/18158400

相关文章

  • leedcode-最长回文串
    自己写的:classSolution:deflongestPalindrome(self,s:str)->int:count=0#用于计算最长回文串的长度hash={}#用于统计每个字符出现的次数的字典#统计每个字符出现的次数foriins:ifnothash.get(i):......
  • leedcode-数字转换为十六进制数
    自己写的,先整数转二进制,再切片二进制转16进制classSolution:deftoHex(self,num:int)->str:#处理特殊情况:当num为0时,直接返回'0'ifnum==0:return'0'#定义十六进制字母的映射关系my_dict={10:......
  • leedcode-左叶子之和
    自己写的,使用了经典的广度优先搜素(BFS):classSolution:defsumOfLeftLeaves(self,root:Optional[TreeNode])->int:#初始化队列,将根节点放入队列中queue=[root]#初始化结果变量res=0#遍历队列,直到队列为空......
  • leedcode-二进制手表
    自己写的,调用了combinations函数:fromitertoolsimportcombinationsfromtypingimportListclassSolution:defreadBinaryWatch(self,turnedOn:int)->List[str]:#可以表示小时的LED灯,对应的值分别是1,2,4,8hour_list=[1,2,4,8]#......
  • leedcode-判断子序列
    自己写的,有点麻烦classSolution:defisSubsequence(self,s:str,t:str)->bool:#第一步先验证s是t的无序子序列#使用字典记录t中每个字符的出现次数mydict=dict()foriint:ifnotmydict.get(i):......
  • leedcode-字符串中的第一个唯一字符
    自己写的,easyclassSolution:deffirstUniqChar(self,s:str)->int:mydict={}#创建一个空字典来存储每个字符的出现次数foriins:#遍历给定的字符串sifnotmydict.get(i):#如果当前字符不在字典中mydic......
  • leedcode-猜数字大小
    classSolution:defguessNumber(self,n:int)->int:i=1#初始猜测数为1flag=True#设置一个标志,用于控制循环#第一部分:使用倍增法寻找一个大于目标数字的边界值whileflag:#使用guess函数来判断......
  • leedcode-
    用二分法查找平方根:classSolution:defisPerfectSquare(self,num:int)->bool:#初始化左右边界left=1right=num#开始二分查找whileleft<=right:#计算中间值mid=left+(......
  • leedcode-两个数组的交集
    自己写的:fromtypingimportList#导入List类型,用于函数参数和返回类型的注解classSolution:defintersection(self,nums1:List[int],nums2:List[int])->List[int]:#初始化一个空列表,用于存储两个列表的交集mylist=[]#遍历num......
  • leedcode-反转字符串中的元音字母
    自己写的,双指针,一次通过classSolution:defreverseVowels(self,s:str)->str:#将输入的字符串转换为列表s_list=list(s)#定义元音字母列表vowels=['a','e','i','o','u','A&......