Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

il y a 3 ans
1234567891011121314151617181920212223242526
  1. import itertools
  2. az = string.ascii_lowercase
  3. trip = re.compile('|'.join(''.join(abc) for abc in zip(az, az[1:], az[2:])))
  4. iol = re.compile(r'i|o|l')
  5. dup = re.compile(r'(.)\1.*(.)\2')
  6. def is_valid(code):
  7. return trip.search(code) and not iol.search(code) and dup.search(code)
  8. def as_int(S):
  9. return sum((ord(c) - 97) % 26 * 26 ** i for i, c in enumerate(S[::-1]))
  10. def as_str(N):
  11. return ''.join(chr(N // 26 ** i % 26 + 97) for i in range(8))[::-1]
  12. code, = df.read_text().splitlines()
  13. n = as_int(code)
  14. generator = filter(is_valid, (as_str(n + i) for i in itertools.count()))
  15. ans1 = next(generator)
  16. ans2 = next(generator)