#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;
}