• USACO 1.2 Palindromic Squares


    /*
    ID: aznfy1
    PROG: palsquare
    LANG: C++
    */
    
    #include<stdio.h>
    #include<string.h>
    #include<iostream>
    using namespace std;
    int num[20];
    int len;int flag;
    void change(int x,int b)
    {
        int i=0;
        while(x!=0)
        {
            num[i]=(x%b);
            x=x/b;
            i++;
        }
        len=i;
    }
    int main()
    {
        freopen("palsquare.in","r",stdin);
        freopen("palsquare.out","w",stdout);
        int n;
        while(cin>>n)
        {
            for(int i=1;i<=300;i++)
            {
                flag=1;
                change(i*i,n);
                for(int i=0;i<len/2;i++)
                {
                    if(num[len-i-1]!=num[i])
                    {
                        flag=0;
                        break;
                    }
                }
                if(flag)
                {
                   change(i,n);
                   for(int i=len-1;i>=0;i--)
                   {
                    if(num[i]==10)
                    {cout<<'A';continue;}
                    if(num[i]==11)
                    {cout<<'B';continue;}
                    if(num[i]==12)
                    {cout<<'C';continue;}
                    if(num[i]==13)
                    {cout<<'D';continue;}
                    if(num[i]==14)
                    {cout<<'E';continue;}
                    if(num[i]==15)
                    {cout<<'F';continue;}
                    if(num[i]==16)
                    {cout<<'G';continue;}
                    if(num[i]==17)
                    {cout<<'H';continue;}
                    if(num[i]==18)
                    {cout<<'I';continue;}
                    if(num[i]==19)
                    {cout<<'J';continue;}
                    cout<<num[i];
                   }
                   cout<<' ';
                   change(i*i,n);
                   for(int i=0;i<len;i++)
                   {
                       if(num[i]==10)
                    {cout<<'A';continue;}
                    if(num[i]==11)
                    {cout<<'B';continue;}
                    if(num[i]==12)
                    {cout<<'C';continue;}
                    if(num[i]==13)
                    {cout<<'D';continue;}
                    if(num[i]==14)
                    {cout<<'E';continue;}
                    if(num[i]==15)
                    {cout<<'F';continue;}
                    if(num[i]==16)
                    {cout<<'G';continue;}
                    if(num[i]==17)
                    {cout<<'H';continue;}
                    if(num[i]==18)
                    {cout<<'I';continue;}
                    if(num[i]==19)
                    {cout<<'J';continue;}
                       cout<<num[i];
                   }
                   cout<<endl;
                }
            }
        }
        return 0;
    }
    View Code
  • 相关阅读:
    工作的价值
    面对伤害该不该回击
    建议
    利用私有的API获得手机上所安装的所有应用信息(包括版本,名称,bundleID,类型)
    你必须知道的HTTP错误
    静态库制作
    MDM证书申请的流程
    IOS客户端实现RSA加密
    获得appstore里面app的最新的版本信息,进行版本更新
    C语言实现简单php自定义扩展
  • 原文地址:https://www.cnblogs.com/whatthefy/p/3085481.html
Copyright © 2020-2023  润新知