zoukankan      html  css  js  c++  java
  • 回文数

    #include<iostream>
    #include<cstring>
    using namespace std;
    int n,a[101],b[101],ans,i;
    void init(int a[])
    {
    string s;
    cin>>n>>s;
    memset(a,0,sizeof(a));
    a[0]=s.length();
    for(i=1;i<=a[0];i++)
    if(s[a[0]-i]>='0'&&s[a[0]-i]<='9')
    a[i]=s[a[0]-i]-'0'; //输入数字 字符串转为数组
    else a[i]=s[a[0]-i]-'A'+10;//将字母转为数字
    }
    bool check(int a[])
    {
    for(i=1;i<=a[0];i++)
    if(a[i]!=a[a[0]-i+1])return false;
    return true;//如果第一个数字与最后一个数字一样为TRUE否则为FALSE;
    }
    void jia(int a[])
    {
    for(int i=1;i<=a[0];i++)b[i]=a[a[0]-i+1]; //使b[i]与a[i]数字顺序相反
    for(int i=1;i<=a[0];i++) a[i]+=b[i];//使a变为a[i]+b[i];
    for(int i=1;i<=a[0];i++)
    {a[i+1]+=a[i]/n;
    a[i]%=n;
    }
    //
    if(a[a[0]+1]>0) a[0]++;//存储进位
    }
    int main()
    { init(a);
    if(check(a)){cout<<0<<endl;return 0;}//本身就是时输出0;
    ans=0;
    while(ans++<=30)
    { jia(a);
    if(check(a)){cout<<ans<<endl;return 0;}//输出步数
    }
    cout<<"Impossible";
    return 0;
    }

  • 相关阅读:
    redis
    sqlalchemy ORM
    元类的理解
    python连接mysql
    ffmpeg去水印
    ffmpeg给视频加文字水印
    yt-seo-checklist
    ffmpeg下载直播流
    ffmpeg拼接mp4视频
    ffmpeg截取视频
  • 原文地址:https://www.cnblogs.com/ling-0-ling/p/5190996.html
Copyright © 2011-2022 走看看