Как рассчитать возможное количество вариантов пароля с доп. условиями?
Стандартная задача на рекурсию. 

Представьте что вы уже умеете решать эту задачу для алфавита длиной n-1, n-2 и т.д. Пусть F(k) — количество паролей для алфавита длины k. 

Тогда для алфавита длины n у вас есть варианты:
  1. Не использовать в пароле последний символ — таких паролей очевидно F(n-1)
  2. Использовать в пароле последний символ — тогда в пароле не может быть предпоследнего символа и дальше можно его продолжать всеми вариантами паролей из n-2 символов. Т.е. таких паролей F(n-2)
  3. Пароль из одного последнего символа — один. 

Итого всего паролей из n символов F(n) = F(n-1) + F(n-2) + 1. 

База рекурсии: очевидно, что F(1) = 1, F(2) = 2.
из пп 2-3 формируете два набора максимальной длины
и затем проходите по ним длинами паролей двигая слева направо с перекрытием по последнему символу