我正在进行一项任务,我的程序将询问用户一个正整数 n ,其中prgogram将找到正整数a和b,satsifying a ^ 3 + b ^ 3 = n 。
到目前为止,我的工作和进展如下所示
0
(输入的短信是瑞典语。)
我现在的问题是当用户键入时,例如1729,程序会相应地输出
对于你想要找到a和b的postivie整数n,满足a ^ 3 + b ^ 3 = n?
1729
[(1,12),(9,10),(10,9),(12,1)]
如何从列表中删除反向重复项,即(10,9)和(12,1)?
谢谢!
答案 0 :(得分:2)
将u = int(n**(1/3)+1)
替换为u = int((n**(1/3))/2) + 1
所以它只检查池的前半部分,因为后半部分是重复的