亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

劍指offer:機器人的運動范圍

發布時間:2020-08-10 07:28:33 來源:網絡 閱讀:358 作者:Jayce_SYSU 欄目:編程語言

題目描述
地上有一個m行和n列的方格。一個機器人從坐標0,0的格子開始移動,每一次只能向左,右,上,下四個方向移動一格,但是不能進入行坐標和列坐標的數位之和大于k的格子。 例如,當k為18時,機器人能夠進入方格(35,37),因為3+5+3+7 = 18。但是,它不能進入方格(35,38),因為3+5+3+8 = 19。請問該機器人能夠達到多少個格子?

class Solution:
    def movingCount(self, threshold, rows, cols):
        # 判斷(row, col)是否可以進入:位置合法且未進入過
        def isValid(row, col):
            if row < 0 or row >= rows or col < 0 or col >= cols:
                return False
            num = 0
            while row > 0:
                num += row % 10
                row //= 10

            while col > 0:
                num += col % 10
                col //= 10

            return num <= threshold

        def helper(row, col):
            cnt = 0  # 對于每個位置,在確認過可以訪問之前先初始化為0
            if isValid(row, col) and not visited[row][col]:
                # 如果(row, col)可以進入,那么將其設為已訪問,然后對四個鄰居進行訪問
                visited[row][col] = True
                cnt = (1 + helper(row + 1, col) + helper(row - 1, col)
                       + helper(row, col + 1) + helper(row, col - 1))

            return cnt

        if threshold < 0:
            return 0
        visited = [[False] * cols for _ in range(rows)]
        return helper(0, 0)
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

唐河县| 临澧县| 舞阳县| 兴城市| 磴口县| 中牟县| 舟曲县| 石家庄市| 威海市| 河北区| 扶余县| 从化市| 涿鹿县| 通州市| 天峨县| 余庆县| 枣强县| 锡林浩特市| 濮阳县| 花垣县| 涪陵区| 武山县| 屏东县| 巴里| 江油市| 台北市| 甘洛县| 黑水县| 城口县| 菏泽市| 交口县| 黎城县| 那曲县| 惠来县| 射阳县| 治多县| 灵山县| 土默特左旗| 阳曲县| 宁河县| 涡阳县|