No adjacent equal digits
Count integers x in [1, N] (decimal, no leading zeros) such that no two ADJACENT digits of x are equal. Return the count. Constraints: 1 <= N <= 10**18. A direct loop is infeasible; use digit DP tracking the previous digit, a tight flag, and a started flag (to handle leading zeros / the length).
Implement
count_no_adjacent_equal(N: int) → intExamples
in
[12]out11What a strong answer looks like
State your approach and its time/space complexity out loud before you optimize. Handle the edge cases (empty input, duplicates, overflow), and say why you chose this over the brute force. Green tests are the floor, not the grade.
0:00 of about 35 min
solution.py
InputExpectedGot
[12]11not run yetsample