<p>You are given a <strong>0-indexed</strong> string <code>s</code> of <strong>even</strong> length <code>n</code>. The string consists of <strong>exactly</strong><code>n / 2</code> opening brackets <code>'['</code> and <code>n / 2</code> closing brackets <code>']'</code>.</p>
<p>A string is called <strong>balanced</strong> if and only if:</p>
<ul>
<li>It is the empty string, or</li>
<li>It can be written as <code>AB</code>, where both <code>A</code> and <code>B</code> are <strong>balanced</strong> strings, or</li>
<li>It can be written as <code>[C]</code>, where <code>C</code> is a <strong>balanced</strong> string.</li>
</ul>
<p>You may swap the brackets at <strong>any</strong> two indices <strong>any</strong> number of times.</p>
<p>Return <em>the <strong>minimum</strong> number of swaps to make </em><code>s</code><em><strong>balanced</strong></em>.</p>
<strong>Explanation:</strong> The string is already balanced.
</pre>
<p> </p>
<p><strong>Constraints:</strong></p>
<ul>
<li><code>n == s.length</code></li>
<li><code>2 <= n <= 10<sup>6</sup></code></li>
<li><code>n</code> is even.</li>
<li><code>s[i]</code> is either <code>'['</code>or <code>']'</code>.</li>
<li>The number of opening brackets <code>'['</code> equals <code>n / 2</code>, and the number of closing brackets <code>']'</code> equals <code>n / 2</code>.</li>