题目描述
给定两个整数n、b,判断在十进制整数n在b进制下是否是回文数,如果是,输出Yes,否则输出no。在此输出之后输出n在b进制下的具体表示。
输入描述
两个整数n、b。
输出描述
两行
第一行输出Yes或者no
第二行输出n在b进制下的表示
大家帮我看看这代码哪有问题:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,b,a[1005];
cin>>n>>b;
int cnt=0;
while(n){
a[++cnt]=n%b;
n/=b;
}
int flag=0;
for(int i=1,j=cnt;i<=j;i++,j--){
if(a[i]!=a[j]){
flag=0;
}
}
if(flag==0){
cout<<"Yes"<<endl;
}
else{
cout<<"no"<<endl;
}
for(int i=cnt;i>1;--i){
if(a[i]<10){
cout<<a[i];
}else{
cout<<(char)(a[i]-10+'A');
}
}
return 0;
}