【PAT甲级 进制转换/回文数判断】1019 General Palindromic Number (20 分)

该代码实现了一个功能,即输入一个十进制数和一个基数,将该数转换为指定基数的表示,并判断其是否为回文数。通过将数转换成数组并比较前半部分与后半部分是否相等来确定回文状态。最后,输出结果及转换后的数的每一位。
摘要由CSDN通过智能技术生成

给定一个十进制数,判断这个数的radix进制数是不是回文数

#include<bits/stdc++.h>
using namespace std;

vector<int> convertNum;

void convert(long long num, int radix) {
	do {
		convertNum.push_back(num % radix);
		num /= radix;
	} while(num != 0);

}

int main() {
	long long num;
	int radix;
	cin >> num >> radix;
	convert(num, radix);

	int flag = true;
	for(int i = 0;i < convertNum.size()>>1;++i) {
		if(convertNum[i] != convertNum[convertNum.size() - 1 - i]) {
			flag = false;
			break;
		}
	}
	flag ? cout<<"Yes\n" : cout<<"No\n";
	for(int i = convertNum.size() - 1;i >= 0 ;--i)
		cout << convertNum[i] << (i == 0 ? "\n" : " ");

	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值