“精致”的数

题目

代码

def DelicateNumber(x, y ,n):
    nums = []
    for i in range(0,n):
        for j in range(0,n):
            if x**i + y**j <= n:
                nums.append(x**i + y**j )
    return sorted(set(nums), key = nums.index) #通过sorted函数和set函数去掉重复的元素

x =  int(input("Enter x:\n"))  
y =  int(input("Enter y:\n"))  
n =  int(input("Enter n:\n")) 
print(DelicateNumber(x, y ,n))

输入

Enter x:
1
Enter y:
2
Enter n:
5

输出

[2, 3, 5]

posted @ 2020-05-05 15:45  sinlearn  阅读(127)  评论(0编辑  收藏  举报