N = int(input()) M = N//(10**9+1) d = [str(i) for i in range(10)] def generate(X): q = [] if X == 0: return [""] elif X == 1: return d else: string = "" b_data = generate(X-2) for s in b_data: for j in range(10): q.append(d[j]+s+d[j]) return q A = set() for i in range(1, 10): K = generate(i) for some in K: A.add(int(some)) seq = list(A) seq.sort() ans = 0 for some in seq: if 1 <= some <= M and str(some)==str(some)[::-1]: ans += 1 print(ans)