当前位置:   article > 正文

Project Euler problem 62_project euler 62

project euler 62

题目的大意很简单


做法的话。

我们就枚举1~10000的数的立方,

然后把这个立方中的有序重新排列,生成一个字符串s, 然后对于那些符合题目要求的肯定是生成同一个字符串的。

然后就可以用map来搞了


这里偷懒用了python

  1. import string
  2. dic = {}
  3. def getstr(n):
  4. sn = str(n)
  5. arr = []
  6. for c in sn:
  7. arr.append(c)
  8. arr.sort()
  9. return ''.join(arr)
  10. for i in xrange(1, 10000):
  11. s = getstr(i**3)
  12. if s in dic:
  13. dic[s] += 1
  14. else:
  15. dic[s] = 1
  16. a = []
  17. for d in dic:
  18. if dic.get(d) == 5:
  19. a.append(d)
  20. k = min(a)
  21. for i in xrange(1, 10000):
  22. s = getstr(i**3)
  23. if dic[s] == 5:
  24. print i, i**3


本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号