#include <stdio.h>
using namespace std;
int panduan(char *s)
{
int i, flag=true;
// 既然知道是32為整數,有時參數可以用常量(比如i<16)
for(i=0;i<16;i++)
{
if(s[i]!=s[31-i])
{
flag=false;
break; // 若已知不對稱,循環可以提前退出
}
}
return flag;
}
int main()
{
int a;
int counter=0;
// cin>>a 和scanf("%d",&a)!=EOF有區別
// 在a=-1時前者會以為是文件結束,後者不會
while(scanf("%d",&a) != EOF)
{
char s[32];
for(int i=0;i<32;i++)
{
s[i]=a%2; // 用a&1更好壹些,以為位操作比取模操作快
a >>= 1; //這裏不能用a=a/2,如果a是負數,符號位1不會因為除法運算而移動
}
if(panduan(s)==1)
counter++;
}
cout<<counter<<endl;
return 0;
}