1019 General Palindromic Number (20)

来源:互联网 发布:程序员中级职称考试 编辑:程序博客网 时间:2024/06/05 06:52
#include <iostream>
using namespace std;
class A
{
public:
enum{N=100};
void init();
void run();
bool ispalindromic();
int digit,base;
int ar[N],n;
};
bool A::ispalindromic()
{
int i,j;
i=0;j=n-1;
while(i<j)
{
if(ar[i]!=ar[j]) return false;
i++;j--;
}
return true;
}
void A::init()
{
cin>>digit>>base;
n=0;
}
void A::run()
{
int i;
init();
do
{
ar[n++]=digit%base;
digit/=base;
}while(digit>0);
if(ispalindromic())
{
cout<<"Yes"<<endl;cout<<ar[n-1];
for(i=n-2;i>=0;i--) cout<<" "<<ar[i];
}
else
{
cout<<"No"<<endl;cout<<ar[n-1];
for(i=n-2;i>=0;i--) cout<<" "<<ar[i];
}
}
int main()
{
//freopen("test.in","r",stdin);
A* a=new A;
a->run();
return 0;
}
0 0