#include <stdio.h>
#include<math.h>
// int main() {
//     int n=0;

//     scanf("%d",&n);
//     if(n>10)
//     {
//         int count=1;
//     for(int i=0;i<=n;i++)
//     {
//         int arr[9]={0};
//         int p=i*i;
//         int j=0;
//         while(p)
//         {
//             arr[j++]=p%10;
//             p=p/10;
//         }
//         int sum=0;
//         for(int i=0;i<(j==1?1:j/2);i++)
//         {
//             sum+=arr[i]*pow(10,i);
//         }
//         if(sum==i)
//             count++;
//     }
//     printf("%d",count);
//     }
//     else {
//         int count=0;
//          for(int i=0;i<=n;i++)
//     {
//         int arr[9]={0};
//         int p=i*i;
//         int j=0;
//         while(p)
//         {
//             arr[j++]=p%10;
//             p=p/10;
//         }
//         int sum=0;
//         for(int i=0;i<(j==1?1:j/2);i++)
//         {
//             sum+=arr[i]*pow(10,i);
//         }
//         if(sum==i)
//             count++;
//     }
//     printf("%d",count);
//     }
//     return 0;
// }

int main() {
    int count = 0;
    int n = 0;
    scanf("%d", &n);
    for (int i = 0; i <= n; i++) {
        int p = i * i;
        int len = 0;
        int m = i;
        while (m) {
            m /= 10;
            len++;
        }
        int arr[10] = { 0 };
        int j = 0;
        while (p) {
            arr[j] = p % 10;
            j++;
            p /= 10;
        }
        int sum = 0;
        for (int k = 0; k < len ; k++) {
            sum = sum + arr[k] * pow(10, k);
        }
        if (sum == i)
            count++;
    }
    printf("%d", count);
    return 0;
}