<p>You are given a string <code>s</code>, an integer <code>k</code>, a letter <code>letter</code>, and an integer <code>repetition</code>.</p>
<p>Return <em>the <strong>lexicographically smallest</strong> subsequence of</em><code>s</code><em> of length</em><code>k</code><em>that has the letter</em><code>letter</code><em>appear <strong>at least</strong></em><code>repetition</code><em>times</em>. The test cases are generated so that the <code>letter</code> appears in <code>s</code><strong>at least</strong><code>repetition</code> times.</p>
<p>A <strong>subsequence</strong> is a string that can be derived from another string by deleting some or no characters without changing the order of the remaining characters.</p>
<p>A string <code>a</code> is <strong>lexicographically smaller</strong> than a string <code>b</code> if in the first position where <code>a</code> and <code>b</code> differ, string <code>a</code> has a letter that appears earlier in the alphabet than the corresponding letter in <code>b</code>.</p>
<strong>Input:</strong> s = "leetcode", k = 4, letter = "e", repetition = 2
<strong>Output:</strong>"ecde"
<strong>Explanation:</strong>"ecde" is the lexicographically smallest subsequence of length 4 that has the letter "e" appear at least 2 times.