''' 解题思路: 输入命令的前n个字符的匹配,并反馈输出相应的字符串 ''' def match(s1,s2): com_exe = [['reset','board'],\ ['board','add'],\ ['board ','delete'],\ ['reboot ','backplane'],\ ['backplane ','abort']] j = 0 k = 0 for i in range(0,5): if s1 == com_exe[i][0][0:len(s1)] and s2 == com_exe[i][1][0:len(s2)]: j = i k += 1 if k==1: return j else: return -1 #================================================== while 1: try: com = 'reset' com_exe = [['reset','board'],\ ['board','add'],\ ['board ','delete'],\ ['reboot ','backplane'],\ ['backplane ','abort']] s = input().strip().split() #print(len(s)) if len(s)==1: s = s[0] #print(s) if s == com[0:len(s)]: print('reset what') else: for i in range(0,5): if s == com_exe[i][0][0:len(s)]: print('unknown command') break elif len(s)==2: s1 = s[0] s2 = s[1] #print(s1,s2) t = match(s1,s2) #print('t=',t) if t == -1: print('unknown command') elif t == 0: print('board fault') elif t == 1: print('where to add') elif t == 2: print('no board at all') elif t == 3: print('impossible') elif t == 4: print('install first') pass else: pass except: break