没啥说的,直接暴力
#include<iostream>
#include<string>
using namespace std;
int b;
string huiwen(int a)
{
string chg;
while(a)
{
char c=a%b;
if(c>9) c=c-10+'A';
else c=c+'0';
chg.insert(0,1,c);
a=a/b;
}
return chg;
}
bool panduan(string num)
{
while(!num.empty())
{
if(num.back()!=num.front())
{
return false;
}
num.erase(num.begin());
if(!num.empty()) num.erase(num.end()-1);
}
return true;
}
int main()
{
cin>>b;
for(int i=1;i<=300;i++)
{
string num=huiwen(i*i);
if(panduan(num))
{
cout<<huiwen(i)<<" "<<num<<endl;
}
}
return 0;
}