思____记忆空间。 2022-03-28 10:47 采纳率: 0%
浏览 57

产生一个一串数字的字符串,其数字和为定值。

假设数字和为n,其每个数字为正整数。
产生的代码效果如下:
如 n=2, 长度L=5
20000
11000
10100
10010
10001
02000
01100
01010
01001
00200

依次类推;对任意n跟L都成立。

  • 写回答

1条回答 默认 最新

  • chuifengde 2022-03-28 14:46
    关注
    import itertools as it 
    
    def div(n, m, s, l):
        if n == 0:
            l.append(s)
        else:
            if m>1:
                div(n, m-1, s, l)
            if m <= n:
                div(n-m, m, str(m)+ ' '+s, l) 
            
    
    n = int(input(">>>"))
    L = int(input(">>>"))
    l = []
    div(n, n, '', l)
    
    for i in l:
        ls =list( map(int, i.strip().split()))
        ls += [0] * (L - len(ls))
        for _ in set(it.permutations(ls, len(ls))):
            print(''.join(map(str, _)))
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 3月28日

悬赏问题

  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 github训练的模型参数无法下载
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题