PAT-1019 General Palindromic Number (20)

题目大意:给定数 N 、进制 b ,判断 N 在进制 b 下是不是回文数字并输出。

解题思路:注意输出样式 和 0 的特判。

题目链接:https://www.patest.cn/contests/pat-a-practise/1019

#include <iostream>            
#include <algorithm>            
#include <set>            
#include <map>            
#include <vector>            
#include <stack>            
#include <queue>            
#include <cmath>            
using namespace std;

stack<int > SS;

int main(int argc, char** argv) {
	int n,b,N;
	cin >> N >> b;
	n = N;
	int sum = 0;
	if(n == 0)
	{
		SS.push(0);
	}
	while(n!=0)
	{
		sum *= b;
		sum += n%b;
		SS.push(n%b);
		n /= b;
	}
	if(sum == N)
		cout << "Yes" << endl;
	else
		cout << "No" <<endl;
	bool flag = false;
	while(!SS.empty()) 
	{
		if(flag == true)
		{
			cout << " " << SS.top();
		}
		else
		{
			cout << SS.top();
			flag = true;
		}
		SS.pop();
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/zhoujian_1943/article/details/79368904
今日推荐