-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathalphabet-board-path.html
69 lines (27 loc) · 1.84 KB
/
alphabet-board-path.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<p>On an alphabet board, we start at position <code>(0, 0)</code>, corresponding to character <code>board[0][0]</code>.</p>
<p>Here, <code>board = ["abcde", "fghij", "klmno", "pqrst", "uvwxy", "z"]</code>, as shown in the diagram below.</p>
<p><img alt="" src="https://assets.leetcode.com/uploads/2019/07/28/azboard.png" style="width: 250px; height: 317px;" /></p>
<p>We may make the following moves:</p>
<ul>
<li><code>'U'</code> moves our position up one row, if the position exists on the board;</li>
<li><code>'D'</code> moves our position down one row, if the position exists on the board;</li>
<li><code>'L'</code> moves our position left one column, if the position exists on the board;</li>
<li><code>'R'</code> moves our position right one column, if the position exists on the board;</li>
<li><code>'!'</code> adds the character <code>board[r][c]</code> at our current position <code>(r, c)</code> to the answer.</li>
</ul>
<p>(Here, the only positions that exist on the board are positions with letters on them.)</p>
<p>Return a sequence of moves that makes our answer equal to <code>target</code> in the minimum number of moves. You may return any path that does so.</p>
<p> </p>
<p><strong class="example">Example 1:</strong></p>
<pre><strong>Input:</strong> target = "leet"
<strong>Output:</strong> "DDR!UURRR!!DDD!"
</pre><p><strong class="example">Example 2:</strong></p>
<pre><strong>Input:</strong> target = "code"
<strong>Output:</strong> "RR!DDRR!UUL!R!"
</pre>
<p> </p>
<p><strong>Constraints:</strong></p>
<ul>
<li><code>1 <= target.length <= 100</code></li>
<li><code>target</code> consists only of English lowercase letters.</li>
</ul>