LeetCode 46 機械人的運動範圍

2022-06-29 05:36:09 字數 951 閱讀 7883

題目描述

地上有乙個m行n列的方格,從座標 [0,0] 到座標 [m-1,n-1] 。乙個機械人從座標 [0, 0] 的格仔開始移動,它每次可以向左、右、上、下移動一格(不能移動到方格外),也不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格 [35, 37] ,因為3+5+3+7=18。但它不能進入方格 [35, 38],因為3+5+3+8=19。請問該機械人能夠到達多少個格仔?

示例 1:

輸入:m = 2, n = 3, k = 1

輸出:3

示例 1:

輸入:m = 3, n = 1, k = 0

輸出:1

1 <= n,m <= 100

0 <= k <= 20

解題思路

一開始我理解的題目就是,直接遍歷陣列,看是不是座標相加比k大,於是有了以下**

public

int movingcount(int m, int n, int

k)

if (sum<=k) }}

return

result;

}

執行不能過

於是才反應過來,有些地方就算座標和小於k,但是機械人過不去也是不能算的

於是就用到dfs演算法

**如下

class

solution

private

int dfs(int x,int y,int m,int n,int

k) visited[x][y]=true

;

return 1+dfs(x+1, y, m, n, k)+dfs(x, y+1, m, n, k);

}}

遞迴的使用 LeetCode46 全排列

題目 給定乙個沒有重複數字的序列,返回其所有可能的全排列。示例 輸入 1,2,3 輸出 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 解答1 class solution public static void digui int a,listl,list ll else 處...

Leetcode 機械人的運動範圍

leetcode 地上有乙個m行n列的方格,從座標 0,0 到座標 m 1,n 1 乙個機械人從座標 0,0 的格仔開始移動,它每次可以向左 右 上 下移動一格 不能移動到方格外 也不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人能夠進入方格 35,37 因為3 5 3 7 ...

LeetCode 機械人的運動範圍

部落格說明 介紹劍指 offer 13.機械人的運動範圍 題目 地上有乙個m行n列的方格,從座標 0,0 到座標 m 1,n 1 乙個機械人從座標 0,0 的格仔開始移動,它每次可以向左 右 上 下移動一格 不能移動到方格外 也不能進入行座標和列座標的數字之和大於k的格仔。例如,當k為18時,機械人...