美文网首页
2021-07-20leetcode刷题

2021-07-20leetcode刷题

作者: Cipolee | 来源:发表于2021-07-26 20:19 被阅读0次
image.png
class Solution:
    def climbStairs(self, n: int) -> int:
        dp=[1,2]
        i=2
        while i<n:
            dp.append(dp[-1]+dp[-2])
            i+=1
        return dp[n-1]
image.png
class Solution:
    def rob(self, nums: List[int]) -> int:
        value=[]
        if len(nums)>2:
            value.append(nums[0])
            value.append(nums[1])
            value.append(nums[0]+nums[2])
            i=3
            while i<len(nums):
                value.append(max(value[i-2],value[i-3])+nums[i])
                i+=1
            #print(value)
            return max(value[-1],value[-2])
        elif len(nums)==2:
            return max(nums)
        else:
            return nums[0]

image.png
class Solution:
    def minimumTotal(self, triangle: List[List[int]]) -> int:
        a=[triangle[0][0]]
        b=[]
        for c in range(1,len(triangle)):
            
            for i in range(len(a)):
                if i==0:
                    b.append(a[i]+triangle[c][i])
                else:
                    b.append(min(a[i],a[i-1])+triangle[c][i])

            b.append(a[-1]+triangle[c][-1])
            
            a=b[:]
            b.clear()
        #print(a)
        return min(a)
image.png
class Solution:
    def isPowerOfTwo(self, n: int) -> bool:
        if n==1:
            return True
        def judge(n):
            if n/2==1:
                return True
            elif n%2!=0 or n/2<1:
                return False
            else:
                return self.isPowerOfTwo(n//2)
        return judge(n)
image.png
class Solution:
    def hammingWeight(self, n: int) -> int:
        ans=0
        while n:
            if n%2!=0:
                ans+=1
            n//=2
        return ans
image.png
class Solution:
    def exist(self, board: List[List[str]], word: str) -> bool:
        isvisited=[[False]*len(board[0]) for i in range(len(board))]
        len_str=len(word)
        ans=[]
        def dfs(cnt,i,j):
            #p=False
            #global flag
            if cnt==len_str or len(ans)!=0:
                ans.append(True)
                return 
        
            #print(cnt==len_str)
            isvisited[i][j]=True
            for x,y in [(i-1,j),(i+1,j),(i,j-1),(i,j+1)]:
                if 0<=x<len(board) and 0<=y<len(board[0]) and not isvisited[x][y]:
                    try:
                        if board[x][y]==word[cnt]:
                            dfs(cnt+1,x,y)
                    except:
                        print(cnt,x,y)
            isvisited[i][j]=False
        for i in range(len(board)):
            for j in range(len(board[0])):
                if board[i][j]==word[0]:
                    dfs(1,i,j)
                    if len(ans)!=0:
                        return True
        return False

不加剪枝过不了,加了一个简单的剪枝之后

相关文章

  • 2021-07-20leetcode刷题

  • 刷题刷题

    时间紧迫,任务繁重,又有疫情影响,搞的人心惶惶,一时间复习得不安宁,又舍不得摆烂。 在焦灼、惶恐的情绪中,紧张急迫...

  • 2022-09-16

    刷题,刷题还是刷题

  • 2018-07-16

    刷题,祸害的何止是教育? 报班,刷题;买练习册,刷题;家教,刷题;跟不上,刷题;学得好,刷题;为了抢跑,刷题;为了...

  • 刷题啊刷题

    因为月底又要考试,所以最近几天一直在刷题。按说是看了书再看视频再刷题效果比较好才是。可是来不及了啊。 上次考试,就...

  • 刷题啊刷题

    刷题啊刷题 因为11月中旬要举行期中考试,所以最近几天,学校精心组织,一直在刷题。按说是看了书再看PPT课件或教师...

  • 2020-02-01关于刷题的几个建议

    算法刷题 针对性刷题,刻意练习。刻意刷题!不是麻木刷题!刷题前一定要先看书,清楚明白为什么要刷这些题,这些题刷完能...

  • 刷题

    清早起来刷题 吃饭也在刷题 上厕所也在刷题 中午也在刷题 下午也在刷题 晚上也在刷题 一天到晚都在刷题 考试马上到...

  • 程序猿刷题网站你知道吗?

    Coderbyte 刷题网LeetCode 刷题网Stack Overflow 刷题网

  • 教你怎么做一只考试锦鲤

    考试前14天疯狂刷题,各个平台疯狂刷题,刷题就对了。 刷的越多,大脑记得越多,也许你刷10道题,能记住的只有1道题...

网友评论

      本文标题:2021-07-20leetcode刷题

      本文链接:https://www.haomeiwen.com/subject/rmedmltx.html