mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
50 lines
1.7 KiB
HTML
50 lines
1.7 KiB
HTML
<p>给你一个字符串 <code>s</code> 。</p>
|
||
|
||
<p>你需要对 <code>s</code> 执行以下操作 <strong>任意</strong> 次:</p>
|
||
|
||
<ul>
|
||
<li>选择一个下标 <code>i</code> ,满足 <code>s[i]</code> 左边和右边都 <strong>至少</strong> 有一个字符与它相同。</li>
|
||
<li>删除 <code>s[i]</code> <strong>左边</strong> 离它 <strong>最近</strong> 且相同的字符。</li>
|
||
<li>删除 <code>s[i]</code> <strong>右边</strong> 离它 <strong>最近</strong> 且相同的字符。</li>
|
||
</ul>
|
||
|
||
<p>请你返回执行完所有操作后, <code>s</code> 的 <strong>最短</strong> 长度。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong class="example">示例 1:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><span class="example-io"><b>输入:</b>s = "abaacbcbb"</span></p>
|
||
|
||
<p><span class="example-io"><b>输出:</b>5</span></p>
|
||
|
||
<p><strong>解释:</strong><br />
|
||
我们执行以下操作:</p>
|
||
|
||
<ul>
|
||
<li>选择下标 2 ,然后删除下标 0 和 3 处的字符,得到 <code>s = "bacbcbb"</code> 。</li>
|
||
<li>选择下标 3 ,然后删除下标 0 和 5 处的字符,得到 <code>s = "acbcb"</code> 。</li>
|
||
</ul>
|
||
</div>
|
||
|
||
<p><strong class="example">示例 2:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><span class="example-io"><b>输入:</b>s = "aa"</span></p>
|
||
|
||
<p><span class="example-io"><b>输出:</b>2</span></p>
|
||
|
||
<p><strong>解释:</strong><br />
|
||
无法对字符串进行任何操作,所以返回初始字符串的长度。</p>
|
||
</div>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= s.length <= 2 * 10<sup>5</sup></code></li>
|
||
<li><code>s</code> 只包含小写英文字母。</li>
|
||
</ul>
|