#include <iostream>
#include <cmath>
using namespace std;
bool issymmetry(int m) {
int b, size;
int num[7], test[7];
int k = pow(m, 2);
if (k / 10 == 0) return true;
else if (k / 100 == 0 && k / 10 != 0) size = 2;
else if (k/1000==0&&k/100!=0) size = 3;
else if (k/10000==0&&k/1000!=0) size = 4;
else if (k / 10000 != 0) size = 5;
int i = 0;
b = size;
while (k) {
num[i] = k / int(pow(10, b - 1));
test[i] = num[i];
k=k% int(pow(10, b - 1));
b--;
i++;
}
int j = 0;
while (size) { // 判断是否对称;
if (num[j] != test[size - 1]) return false;
else {
j++;
size--;
}
}
return true; //若对称时返回true;
}
int main() {
for (int i = 0; i <= 256; i++) {
if (issymmetry(i)) cout << i << endl;
}
return 0;
}
// 64 位输出请用 printf("%lld")