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

    洛谷团队希望加入!
    题目描述
    若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。

    例如:给定一个十进制数 5656,将 5656 加 6565(即把 5656 从右向左读),得到 121121 是一个回文数。

    又如:对于十进制数 8787:

    STEP1:87+78=16587+78=165
    STEP2:165+561=726165+561=726
    STEP3:726+627=1353726+627=1353
    STEP4:1353+3531=48841353+3531=4884

    在这里的一步是指进行了一次 NN 进制的加法,上例最少用了 44 步得到回文数 48844884。

    写一个程序,给定一个 NN(2 le N le 102≤N≤10 或 N=16N=16)进制数 MM(100100 位之内),求最少经过几步可以得到回文数。如果在 3030 步以内(包含 3030 步)不可能得到回文数,则输出 Impossible!。

    输入格式
    两行,分别是 NN,MM。

    输出格式
    如果能在 3030 步以内得到回文数,输出格式形如 STEP=ans,其中 ansans 为最少得到回文数的步数。

    否则输出 Impossible!。

    输入输出样例
    输入 #1复制
    10
    87
    输出 #1复制
    STEP=4

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    char  c[100001];
    int  t,k,lena,leng=1,a[100001],b[100001],g[100001],n;
    void pd();
    void jf()
    {
     int x=0;leng=1;g[1]=0;
      while(leng<=lena+1)
      {g[leng]=a[leng]+a[lena+1-leng]+x;
      x=g[leng]/n;
      g[leng]%=n;
      leng++;
      }g[leng+1]=x;t++;//cout<<t; 
      while(g[leng]==0&&leng>1)
      {leng--;
      }
      pd();
    }
    void pd()
    { 
       int o=0;
     for(int i=1;i<=leng/2;i++)
       {if(g[i]==g[leng+1-i])
        {o++;if(o==leng/2)
          {cout<<"STEP="<<t;k++;}
        }
        else 
        {for(int i=1;i<=leng;i++)
         a[i]=g[i];
         lena=leng;
        }
       } 
      }
    int main()
    {scanf("%d",&n);
     scanf("%s",c);
      lena=strlen(c);
     for(int i=0;i<=lena-1;i++)
     {if(c[i]>57)a[lena-i]=10+c[i]-17-48;
     else a[lena-i]=c[i]-48;
    }
     while(t<=30&&k==0)
     {jf();
     }
     if(k==0)cout<<"Impossible!";
    }
    
  • 相关阅读:
    [CF1483C] Skyline Photo
    [CF1483B] Playlist
    [CF1483A] Basic Diplomacy
    [CF1329C] Drazil Likes Heap
    [CF1329B] Dreamoon Likes Sequences
    [CF1329A] Dreamoon Likes Coloring
    [CF96E] Horse Races
    [ICPC2020济南J] Tree Constructer
    [ICPC2020济南L] Bit Sequence
    [ICPC2020济南G] Xor Transformation
  • 原文地址:https://www.cnblogs.com/xmcword/p/13768416.html
Copyright © 2011-2022 走看看