Class Solution
java.lang.Object
g1601_1700.s1643_kth_smallest_instructions.Solution
1643 - Kth Smallest Instructions.<p>Hard</p>
<p>Bob is standing at cell <code>(0, 0)</code>, and he wants to reach <code>destination</code>: <code>(row, column)</code>. He can only travel <strong>right</strong> and <strong>down</strong>. You are going to help Bob by providing <strong>instructions</strong> for him to reach <code>destination</code>.</p>
<p>The <strong>instructions</strong> are represented as a string, where each character is either:</p>
<ul>
<li><code>'H'</code>, meaning move horizontally (go <strong>right</strong> ), or</li>
<li><code>'V'</code>, meaning move vertically (go <strong>down</strong> ).</li>
</ul>
<p>Multiple <strong>instructions</strong> will lead Bob to <code>destination</code>. For example, if <code>destination</code> is <code>(2, 3)</code>, both <code>"HHHVV"</code> and <code>"HVHVH"</code> are valid <strong>instructions</strong>.</p>
<p>However, Bob is very picky. Bob has a lucky number <code>k</code>, and he wants the <code>k<sup>th</sup></code> <strong>lexicographically smallest instructions</strong> that will lead him to <code>destination</code>. <code>k</code> is <strong>1-indexed</strong>.</p>
<p>Given an integer array <code>destination</code> and an integer <code>k</code>, return <em>the</em> <code>k<sup>th</sup></code> <em><strong>lexicographically smallest instructions</strong> that will take Bob to</em> <code>destination</code>.</p>
<p><strong>Example 1:</strong></p>
<p><img src="https://assets.leetcode.com/uploads/2020/10/12/ex1.png" alt="" /></p>
<p><strong>Input:</strong> destination = [2,3], k = 1</p>
<p><strong>Output:</strong> “HHHVV”</p>
<p><strong>Explanation:</strong> All the instructions that reach (2, 3) in lexicographic order are as follows: [“HHHVV”, “HHVHV”, “HHVVH”, “HVHHV”, “HVHVH”, “HVVHH”, “VHHHV”, “VHHVH”, “VHVHH”, “VVHHH”].</p>
<p><strong>Example 2:</strong></p>
<p><strong><img src="https://assets.leetcode.com/uploads/2020/10/12/ex2.png" alt="" /></strong></p>
<p><strong>Input:</strong> destination = [2,3], k = 2</p>
<p><strong>Output:</strong> “HHVHV”</p>
<p><strong>Example 3:</strong></p>
<p><strong><img src="https://assets.leetcode.com/uploads/2020/10/12/ex3.png" alt="" /></strong></p>
<p><strong>Input:</strong> destination = [2,3], k = 3</p>
<p><strong>Output:</strong> “HHVVH”</p>
<p><strong>Constraints:</strong></p>
<ul>
<li><code>destination.length == 2</code></li>
<li><code>1 <= row, column <= 15</code></li>
<li><code>1 <= k <= nCr(row + column, row)</code>, where <code>nCr(a, b)</code> denotes <code>a</code> choose <code>b</code>.</li>
</ul>
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
Solution
public Solution()
-
-
Method Details
-
kthSmallestPath
-