1def check_inclusion(s1, s2):2 if len(s1) > len(s2):3 return False4 count_s1 = [0] * 265 count_s2 = [0] * 266 for i in range(len(s1)):7 count_s1[ord(s1[i]) - ord('a')] += 18 count_s2[ord(s2[i]) - ord('a')] += 19 matches = 010 for i in range(26):11 matches += (1 if count_s1[i] == count_s2[i] else 0)12 l = 013 for r in range(len(s1), len(s2)):14 if matches == 26:15 return True16 index = ord(s2[r]) - ord('a')17 count_s2[index] += 118 if count_s2[index] == count_s1[index]:19 matches += 120 elif count_s2[index] == count_s1[index] + 1:21 matches -= 122 index = ord(s2[l]) - ord('a')23 count_s2[index] -= 124 if count_s2[index] == count_s1[index]:25 matches += 126 elif count_s2[index] == count_s1[index] - 1:27 matches -= 128 l += 129 return matches == 26