AnthonyFink,
это генератор(16, 17, 18 ... 256 в 100, 101, 102 ... 10000 потом замена 0 на 1 , 1 на 2, 2 на 3, 3 на 4) всех возможных вариантов (нерационально), ограничение по длине входящих данных (остановка генерации строка 7) и фильтрация число должно содержать все входящие элементы строка 18.
alert((16).toString(4))