ACM模板库

ACM模板库


快速幂

<h2>使用方法</h2> <ol> <li> <p>使用命名空间</p> <pre><code class="language-cpp">using namespace algorithm</code></pre> </li> <li>然后直接使用函数即可</li> </ol> <p>[========]</p> <h2>函数说明</h2> <p>函数<code>Type pow(Type index, Type head)</code> 计算 $$index^{head}$$ 的值,返回值为Type类型</p> <p>函数<code>Type pow(Type index, Type head, Type mod)</code> 计算 $$index^{head}\ \ \%\ \ mod$$ 的值,返回值为Type类型</p> <p>[========]</p> <h2>模板代码</h2> <pre><code class="language-cpp">namespace algorithm{ template &lt;class Type&gt; Type qpow(Type index, Type head, Type mod = (Type)-1){ Type sum = (Type)1; while(head){ if(head &amp; 1){ sum = sum * index; if(mod != -1) sum %= mod; } head &gt;&gt;= 1; index = index * index; if(mod != -1) index %= mod; } return sum; } }</code></pre> <p>[========]</p>

页面列表

ITEM_HTML