方法:运用整除,取余将整数转化为数组,比较并确定是否为回文数。
注意点:N=0的情况
#include <iostream>
int main(){
int N,base,a[30]={0},index=0;
scanf("%d%d",&N,&base);
while(N){
a[index++]=N%base;
N=N/base;
}
bool ans=true;
for(int i=0;i<index/2;i++){
if(a[i]!=a[index-1-i]) ans=false;
}
if(ans) printf("Yes\n");
else printf("No\n");
for(int i=index-1;i>=0;i--){
printf("%d",a[i]);
if(i!=0) printf(" ");
}
if(!index) printf("0");
return 0;
}