1019 General Palindromic Number
题目大意
将给出的数按照给出的进制转化,然后判断是否为回文数
算法思想
- 先转为b进制数,然后判断是否为回文数
- 不过有一点不能理解
121 12
No
10 1
这不能算回文数吗,还是我错了?
代码
#include<iostream>
#include<vector>
using namespace std;
int main()
{
long long n, rad;
vector<int>ko;
cin >> n >> rad;
while (n)//进制转化
{
ko.push_back(n % rad);
n = n / rad;
}
bool flag = true;
for (int i = 0; i < ko.size() / 2; i++)//判断是否为回文数
{
if (ko[i] != ko[ko.size() - i - 1])
{
flag = false;
break;
}
}
if (flag)
cout << "Yes" << endl;
else
cout << "No" << endl;
for (int i = ko.size()-1; i >0; i--)//从后往前输出
cout << ko[i] << " ";
cout << ko[0];
return 0;
}
该文章讨论了一种算法,用于将给定数字转化为特定进制后判断是否为回文数。代码示例使用C++编写,通过输入数字和进制,生成数字的进制表示,然后检查其是否为回文。如果中间有不匹配的数字,则判定不是回文数。
689

被折叠的 条评论
为什么被折叠?



