PAT1019 General Palindromic Number

十进制转任意进制,并比较是否是回文数

Sample Input 1:

27 2
Sample Output 1:
Yes
1 1 0 1 1
Sample Input 2:
121 5
Sample 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;
}
 

猜你喜欢

转载自ppcool.iteye.com/blog/1732790