【问题标题】:Python grid coding using dynamic programming使用动态编程的 Python 网格编码
【发布时间】:2022-06-15 04:26:14
【问题描述】:
enter code here


  def grid(m,n, mem={}):
      key = m + ',' + n
      if (m==0 | n==0): return 0
      if (m==1 & m==1): return 1
      if key in mem: return mem[key]
      mem[key] = grid(m-1,n)+grid(m, n-1)
      return mem[key]
    
    grid(18, 18)

类型错误:+ 的操作数类型不受支持:int 和 'str'

【问题讨论】:

  • key = m + ',' + n 就像错误所说的那样,mn 是整数,, 是一个字符串,所以 + 不能直接用于它们。假设 Python >= 3.6,使用 f 字符串:key = f'{m},{n}'

标签: python-3.x grid dynamic-programming


【解决方案1】:

m 和 n 是整数。

因此,您可以像这样替换函数中的第一行。

key = str(m) + ',' + str(n)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-19
    • 2013-12-09
    • 2018-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-24
    相关资源
    最近更新 更多