如何删除嵌套循环乘法重复?

How can I remove nested loop multiplication repetition?

我正在使用嵌套循环 运行 遍历所有 3 位数字的乘积,但我想避免重复(200 * 800,然后是 800 * 200)。

我什至不知道从哪里开始。我想在 x * y 高于某个点时打破第一个循环,但它永远不会达到 1000 * 1000.

for x in range(100, 1000):
    for y in range(100, 1000):

只需让 yx 开始,而不是从 100 一路返回:

for x in range(100, 1000):
    for y in range(x, 1000):

您可以通过使第二个 for 循环的范围从 x 到 1000 来避免重复。下面是相同的代码。

for x in range(100, 1000):
    for y in range(x, 1000):