pat 1019. General Palindromic Number (水。。。)

来源:互联网 发布:淘宝企业店铺出售网址 编辑:程序博客网 时间:2024/06/06 19:51

水题一道

虽然进制基数可能很大,但是直接做短除法就可以了。

#include<stdio.h>#include<vector>using namespace std;int main(){    int n,b;scanf("%d %d",&n,&b);if(n==0){printf("Yes\n0\n");return 0;}    vector<int> v;int x=n,y=0;while(x!=0){y=x%b;v.push_back(y);x/=b;}    int l=v.size(),mid=v.size()/2,i,bl=1;    for(i=0;i<=mid;i++){if(v[i]!=v[l-i-1]){bl=0;break;}}if(bl)printf("Yes\n");elseprintf("No\n");printf("%d",v[l-1]);for(i=l-2;i>=0;i--)printf(" %d",v[i]);    printf("\n");return 0;}


0 0