想法:这道题较容易,之前很多道题都有进制的转化。
#include<cmath>
#include<cstring>
using namespace std;
int num[100001];
int l=0;
void turn(int a, int b)
{
while(a!=0){
num[l]=a%b;
a=a/b;
l++;
}
return;
}
int main()
{
int x,y;
cin>>x>>y;
turn(x,y);
for(int i=0; i<l; i++){
if(num[i]!=num[l-i-1]){
cout<<"No"<<endl;
for(int i=l-1; i>=0; i--){
if(i==0) cout<<num[i];
else cout<<num[i]<<' ';
}
return 0;
}
}
cout<<"Yes"<<endl;
for(int i=l-1; i>=0; i--){
if(i==0) cout<<num[i];
else cout<<num[i]<<' ';
}
return 0;
}