点'?' 匹配任何单个字符
星号“ *”匹配零个或多个字符。
因此,例如,如果输入像s =“ aa”和p =“ a?”,则为true,对于相同的输入字符串,如果模式为“?*”,则为true。
为了解决这个问题,我们将遵循以下步骤-
ss:= s和ps的大小:= p的大小
使dp成为ss x ps大小的矩阵,并使用假值填充它
通过在这些之前添加一个空格来更新p和s
对于范围在1到ps之间的i-
dp [0,i]:= dp [0,i-1]
如果p [i] =星,则
对于我在1到ss范围内
如果s [i]是p [j]或p [j]是'?',则
否则,当p [j]为星号时,则
dp [i,j]:= dp [i – 1,j – 1]
dp [i,j]:= dp [i – 1,j]和dp [i,j – 1]的最大值
对于1到ps范围内的j
返回dp [ss,ps]
Python 编程中 if 语句用于控制程序的执行,基本形式为:
if 判断条件: 执行语句……else: 执行语句……if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。
当判断条件为多个值是,可以使用以下形式:
if 判断条件1: 执行语句1……elif 判断条件2: 执行语句2……elif 判断条件3: 执行语句3……else: 执行语句4……实例如下:
#!/usr/bin/python# -*- coding: UTF-8 -*-# elif用法 num = 5 if num == 3: # 判断num的值 print 'boss' elif num == 2: print 'user'elif num == 1: print 'worker'elif num <0: # 值小于零时输出 print 'error'else: print 'roadman' # 条件均不成立时输出