時間限制:1000 ms | 記憶體限制:65535 kb
難度:1
<dl>
<dt>描述 </dt>
<dd>最近topcoder的xd遇到了一個難題,倘若一個數的三次方的後三位是111,他把這樣的數稱為小光棍數。他已經知道了第一個小光棍數是471,471的三次方是104487111,現在他想知道第m(m<=10000000000)個小光棍數是多少?
<dt>輸入</dt>
<dd>有多組測試資料。第一行一個整數n,表示有n組測試資料。接下來的每行有一個整數m。</dd>
<dt>輸出</dt>
<dd>輸出第m個小光棍數。</dd>
<dt>樣例輸入</dt>
<dd>
</dd>
<dt>樣例輸出</dt>
</dl>
這道題隻要發現破綻就可以很輕松做出來!
隻有末三位是471的數才會滿足要求!
運作時間:2012-10-05 17:29:32 | 運作人:huangyibiao
view sourceprint?
<code>01.</code><code>#include <cstdio></code>
<code>02.</code><code>using</code><code>namespace</code>
<code>std;</code>
<code>03.</code>
<code>04.</code><code>int</code><code>main()</code>
<code>05.</code><code>{</code>
<code>06.</code><code>int</code><code>t;</code>
<code>07.</code><code>scanf</code><code>(</code><code>"%d "</code><code>, &t);</code>
<code>08.</code><code>while</code><code>(t--)</code>
<code>09.</code><code>{</code>
<code>10.</code><code>long</code><code>long</code>
<code>m;</code>
<code>11.</code><code>scanf</code><code>(</code><code>"%lld"</code><code>, &m);</code>
<code>12.</code><code>printf</code><code>(</code><code>"%lld\n"</code><code>, (m-1) * 1000 + 471);</code>
<code>13.</code><code>}</code>
<code>14.</code><code>return</code><code>0;</code>
<code>15.</code><code>}</code>