题目:戳这里
题意:给数字n和基数b,求n在b进制下是否回文。
解题思路:暴力。
代码:
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e4 + 10;
const int maxe = 1e2+10;
const int inf = 0x3f3f3f3f;
typedef long long ll;
int nu[maxn];
int main() {
int n, b;
scanf("%d %d", &n, &b);
int cnt = 0;
while(n) {
nu[cnt++] = n%b;
n /= b;
}
int i;
for(i = 0; i < cnt / 2; ++i) {
if(nu[i] != nu[cnt - i - 1]) {
puts("No");
break;
}
}
if(i >= cnt/2) puts("Yes");
printf("%d", nu[cnt - 1]);
for(int i = cnt - 2; i >= 0; --i) {
printf(" %d", nu[i]);
}
return 0;
}
本文介绍了一种通过编程判断任意数字在指定进制下是否构成回文数的方法。使用C++实现,核心思路是对数字进行转换并检查其在目标进制下的表示是否为回文。
699

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



