擅长:python、mysql、java
<p>这是自然数和的推广。步长<code>k</code>和最大数<code>n</code>(其中<code>n</code>可被<code>k</code>整除)的一般公式是:<code>n / k / 2 * (n + k)</code>。在</p>
<pre><code>def euler1 (n):
max3 = range(0, n, 3)[-1]
max5 = range(0, n, 5)[-1]
max15 = range(0, n, 15)[-1]
sum3 = (max3 + 3) * max3 // 3 // 2
sum5 = (max5 + 5) * max5 // 5 // 2
sum15 = (max15 + 15) * max15 // 15 // 2
return sum3 + sum5 - sum15
</code></pre>
^{pr2}$