USACO-Section1.2 Palindromic Squares

来源:互联网 发布:淘宝店铺怎么设置客服 编辑:程序博客网 时间:2024/06/05 10:56

Palindromic Squares

进制转换,遍历判断即可。
代码如下:

/*ID: xhzdcyy1PROB: palsquareLANG: C++         */#include <iostream>#include <fstream>#include <string>#include<map>#define cin fin#define cout fout using namespace std;ofstream fout ("palsquare.out");ifstream fin ("palsquare.in");string func(int a,int b){    string res="";    int tmp;    while(a){        tmp=a%b;        if(tmp<10){            res=char(tmp+'0')+res;        }        else{            res=char(tmp+'A'-10)+res;        }        a/=b;    }    return res;}bool check(string a){    int l=a.length();    for(int i=0;i<l/2;i++){        if(a[i]!=a[l-1-i]) return false;    }    return true;}int main(){    int b;    cin>>b;    for(int i=1;i<=300;i++){        string tmp=func(i*i,b);        if(check(tmp)){            cout<<func(i,b)<<" "<<tmp<<endl;        }    }    return 0; }