python-3.x - 问题:从范围 (1,1000) 中找到数字的数字的迭代平方和为 1 的数字
问题描述
for value in range(0,1000):
def digisum(value):
x= sum(int(c) ** 2 for c in str(value))
def iteration(value):
if x in [0,1]:
print (value)
else:
iteration(digisum(x))
我收到一个错误,因为“超出了最大递归密度”
解决方案
for value in range(1+1,1000):
if sum(int(c)**2 for c in str(value)) == 1:
print(value)
由于范围是独占的,因此省略了 1 和 1000。输出和正确答案是 10 和 100。
推荐阅读
- data-structures - Graph data structure selection
- sql-server - Trying to trace Stored procedure execution from Application
- bash - Expand variables in shell command
- android-x86 - android-x86 on vmware ext4-fs corrupt
- php - $this->input->post() 在 codeigniter rest api 实现中返回 NULL
- java - When deleting an exoplayer download DownloadTracker.isDownloaded() returns true
- mysql - How to make a query on a multilevel table of herarchy
- sql - SQL INFORMATION_SCHEMA.COLUMNS 返回不完整的值
- cluster-analysis - Heavily unbalanced/skewed data clusters
- c++ - Qt / C++ QImage sometimes file is not loaded. But file is accessible