【PAT甲级】1019 General Palindromic Number (20 分)
题意:
输入两个正整数n和b(n<=1e9,2<=b<=1e9),分别表示数字的大小和进制大小,求在b进制下n是否是一个回文串,输出“Yes”or“No”,并将数字n在b进制下打印出来,用空格间隔开每一位数字。
AAAAAccepted code:
1 #include<bits/stdc++.h> 2 using namespace std; 3 int a[1007]; 4 int main(){ 5 int n,b; 6 cin>>n>>b; 7 int cnt=0; 8 while(n){ 9 a[++cnt]=n%b; 10 n/=b; 11 } 12 int flag=0; 13 for(int i=1;i<=cnt/2;++i) 14 if(a[i]!=a[cnt-i+1]) 15 flag=1; 16 if(!flag) 17 cout<<"Yes"<<"\n"; 18 else 19 cout<<"No"<<"\n"; 20 for(int i=cnt;i>1;--i) 21 cout<<a[i]<<" "; 22 cout<<a[1]; 23 return 0; 24 }
保持热爱 不懈努力
不试试看怎么知道会失败呢(划掉)
世上无难事 只要肯放弃(划掉)