Computer >> Máy Tính >  >> Lập trình >> Python

Chương trình kiểm tra xem số đã cho có phải là số Narcissistic hay không bằng Python

Giả sử chúng ta có một số n; chúng ta phải kiểm tra xem nó có bằng tổng các chữ số của với lũy thừa của số chữ số hay không.

Vì vậy, nếu đầu vào là 9474, thì đầu ra sẽ là True là 9 ^ 4 + 4 ^ 4 + 7 ^ 4 + 4 ^ 4 =6561 + 256 +2401 + 256 =9474.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • s:=danh sách các chữ số trong n
  • trả về true nếu n bằng tổng của x * (kích thước của s) với mọi x tính bằng s, ngược lại là false

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

Ví dụ

class Solution:
   def solve(self, n):
      s=str(n)
      return n==sum(int(x)**len(s) for x in s)
ob = Solution()
print(ob.solve(9474))

Đầu vào

9474

Đầu ra

True