Zygodromes

Published by Matt in

A number is Zygodrome if it can be partitioned into clusters of repeating digits with a length equals or greater than two (as to say that repeating digits need to be placed as an adjacent pair or a greater group, and that no single digits are allowed).

Given a non-negative integer num, implement a function that returns true if num is a Zygodrome number, or false otherwise.

Examples

is_zygodrome(11) ➞ true
# 11 is a pair of repeated digits

is_zygodrome(33322) ➞ true
# 333 is a triplet of repeated digits, and 22 is a pair

is_zygodrome(5) ➞ false
# 5 is a single digit, it doesn't form a pair

is_zygodrome(1001) ➞ false
# 00 is a pair, but the two 1's are not adjacent

Notes

  • Trivia: the number 9997777 is the only known Zygodrome prime whose index in the Zygodromes sequence (664444) is a prime in turn.
  • You can expect only non-negative integers as given input, without exceptions to handle.
Watch a quick demo on how Edabit works.