第二题这么做貌似可以应对各种情况,比如说【‘aa’, 'bb',...】
import numpy as np def loop(strings):
    alphas = np.zeros(58, dtype=int)
    alphaApper = np.zeros(58, dtype=int)
    chara = ord('a')  for string in strings:  if string != '':
            head = ord(string[0])
            tail = ord(string[-1])  if head == tail:  if alphaApper[head - chara] == 0:
                    alphaApper[head - chara] = 26   else:
                if alphas[head - chara] > 0:
                    alphas[head - chara] -= 1   else:
                    alphas[head - chara] = 1  if alphaApper[head - chara] == 26 or alphaApper[head - chara] == 0:  alphaApper[head - chara] = -1    if alphas[tail - chara] > 0:
                    alphas[tail - chara] -= 1   else:
                    alphas[tail - chara] = 1   if alphaApper[tail - chara] == 26 or alphaApper[tail - chara] == 0:  alphaApper[tail - chara] = -1   if np.sum(alphas) == 0 and np.sum(alphaApper) <= 0:  return True  return False    if __name__ == "__main__":
    strings = ['aa', 'ab', 'ba', 'bb', 'aa', '']  print(loop(strings))