忽略helper
方法,你所拥有的列表理解will列出所有对,但元素的顺序是一个问题。你将有无数对像(0, m)
哪个是其次是无限多对像(1, m)
。当然elem
将永远迭代所有(0, m)
对从未到达(1, m)
or (2, m)
etc.
我不确定你为什么有helper
方法——使用它,您只需构建一个像这样的对列表[(0,0), (1,1), (2,2), ...]
因为你已经过滤了m = n
。这是要求的一部分吗?
就像@hammar建议的那样,从0 = m + n
并列出 (m, n) 对。然后列出 (m, n) 对,其中1 = m + n
。那么你的列表将如下所示[(0,0), (0,1), (1,0), (0,2), (1,1), (2,0), ...]
.