#include using namespace std; #define int long long #define Rep(i, N) for(int i = 0; i < N; i++) #define Reps(i, x, N) for(int i = x; i < N; i++) string to_str(int n) { ostringstream os; os << n; return os.str(); } signed main() { int N; cin >> N; int ans = 0; Reps(i, 1, 100000) { string T = to_str(i), R = T; string S, F; reverse(R.begin(), R.end()); if(i < 10000) { S = T + R; int ssize = (int)S.size(); Rep(j, 9 - ssize) S += '0'; S += T + R; } else S = "1000000000000000001"; T = to_str(i / 10); F = T + R; int fsize = (int)F.size(); Rep(j, 9 - fsize) F += '0'; F += T + R; //cout << S << " " << F << endl; int A, B; sscanf(S.c_str(), "%lld", &A); sscanf(F.c_str(), "%lld", &B); //cout << A << " " << B << endl; if(N >= A) ans++; if(N >= B) ans++; } cout << ans << endl; return 0; }