擅长:python、mysql、java
<p>我相信你的代码可以正常工作。它正确地返回实现结果所需的最小消去次数,而不是结果本身</p>
<blockquote>
<p>is there any difference between if(number%2) and if(number%2==0)</p>
</blockquote>
<p>是的,<code>if number % 2</code>与说<code>if number % 2 == 1</code>相同,这与说<code>if number % 2 == 0</code>相反。因此,从一个切换到另一个会破坏程序的逻辑</p>
<p>我可以将您的代码简化如下:</p>
<pre><code>def min_elimination(array):
odd = 0
# Stores the new value
for number in array:
# Count odd numbers
odd += number % 2
return min(odd, len(array) - odd)
</code></pre>
<p>当<code>min_elimination([1, 2, 3, 7, 9])</code>返回<code>1</code>时,需要一(1)个消去法使所有相邻元素之和为偶数</p>