十进制转任意进制,并比较是否是回文数
Sample Input 1:
27 2Sample Output 1:
Yes 1 1 0 1 1Sample Input 2:
121 5Sample Output 2:
No 4 4 1
#include <string.h>
#include <iostream>
using namespace std;
int main()
{
long long n, radix;
int a[1000];
cin>>n>>radix;
int index = 0;
while(n != 0){
a[index++] = n%radix;
n /= radix;
}
int i = 0;
int j = index - 1;
int flag = 0;
while(i < j)
{
if(a[i] != a[j])
{
flag = 1;
break;
}
i++;
j--;
}
if(flag)
{
cout<<"No"<<endl;
}
else
{
cout<<"Yes"<<endl;
}
for(i = index-1; i > 0; i--)
{
cout<<a[i]<<" ";
}
cout<<a[0];
return 0;
}