#include<bits/stdc++.h>
using namespace std;
int b,tot,x;
char a[10];
bool get_jz(int n,int m)
{
memset(a,0,sizeof(a));
tot = 0;
int x = n;
while(x)
{
if((x % m) > 9)
a[++tot] = (x % m) - 9 + 'A' + 1;
else
a[++tot] = x % m + '0';
x /= m;
}
int l=1,r=tot;
while(l < r)
{
if(a[l] != a[r])
return 0;
l++;
r--;
}
return 1;
}
void print(int n,int m)
{
memset(a,0,sizeof(a));
int x = n;
while(x)
{
if((x % m) > 9)
a[++tot] = (x % m) - 9 + 'A' + 1;
else
a[++tot] = x % m + '0';
x /= m;
}
for(int i=tot;i>=1;i--)
cout<<a[i];
return ;
}
int main()
{
cin>>b;
for(int i=1;i<=300;i++)
{
if(get_jz(i*i , b) == 1)
{
print(i,b);
cout<<" ";
print(i*i,b);
cout<<"\n";
}
}
return 0;
}
输出:
