擅长:python、mysql、java
<p>考虑到这一点,我们将重复这段代码,直到找到一组合适的值。首先,我们取范围[1,49],然后随机排序,取前6个值。如果满足第一个要求,则检查2。如果是这样,我们就打破循环,保留这个值列表。在</p>
<pre><code>while True:
x = (np.random.permutation(49)+1)[0:6]
if len([i for i in x if 1<=i<25]) > 4: break
if len([i for i in x if 25<=i<=49]) > 4: break
print(x)
</code></pre>
<hr/>
<p>整个代码可以写成</p>
^{pr2}$
<p>这将找到满足您条件的列表。最后一个语句有点密集,它会遍历列表中的每个值并检查是否至少有3个连续的值<code>x[ix+1] - i == 1 and x[ix+2] - x[ix+1] == 1</code>。如果这是真的,我们将值添加到列表中,如果在这个新列表的末尾至少有1个值,我们可以得出结论,至少有3个连续的值。在</p>