让\$n=42\$ (输入)
然后除数是: 1,2,3,6,7,14,21,42
除数: 1,4,9,36,49,196,441,1764
取和(加):2500
因为$50\乘以50=2500\$,所以我们返回一个真实值。如果它不是一个完美的平方,返回一个虚假的价值。
42 ---> true 1 ---> true 246 ---> true 10 ---> false 16 ---> false
这是密码-高尔夫,所以每种语言都有最短的字节代码获胜
感谢@Arnauld指出了序列:A046655
发布于 2018-09-10 18:38:53
ÑnOŲ
在网上试试!
ÑnOŲ Ñ - divisors n - square O - sum Ų - is square?
发布于 2018-09-10 18:40:05
lambda n:sum(i*i*(n%i<1)for i in range(1,n+1))**.5%1==0
发布于 2018-09-10 18:38:40
ᛦq
解释:
Factors ᛦ Squared Summed is in? q infinite list of square numbers
https://codegolf.stackexchange.com/questions/171943
相似问题