将一个整数分拆为若干整数和

优质
小牛编辑
140浏览
2023-12-01

将一个整数,分拆为若干整数的和。例如实现:
4=3+1
4=2+2
4=2+1+1
4=1+1+1+1

解决(Python)

  1. #! /usr/bin/env python
  2. #encoding:utf-8
  3. """
  4. """
  5. def int_divided(m,r,out_list):
  6. if(r==0):
  7. return True
  8. tm=r
  9. while tm>0:
  10. if(tm<=m):
  11. out.append(tm)
  12. if(divide(tm,r-tm,out_list)):
  13. print out
  14. out.pop()
  15. tm = tm-1
  16. return False
  17. n=6
  18. output=[]
  19. int_divided(n-1,n,output)