!!! 蒟蒻求救为什么是0分!!!
查看原帖
!!! 蒟蒻求救为什么是0分!!!
767063
itzy楼主2022/10/19 19:49

云剪贴板网址: https://www.luogu.com.cn/paste/qwdyk3ju 代码如下:

#include <bits/stdc++.h>   
using namespace std;   
int m[500],mm[500],len;     
void get(string x)   
{           
    len=x.size();
    for (int i=0; i<len; i++)
    {
        if (x[i]>='0' && x[i]<='9')
        {
            m[i]=x[i]-'0';
        }
        else 
        {
            m[i]=x[i]+'A'-10;
        }
    }
}

void plus(int n)
{
    for (int i=0; i<len; i++)
    {
        mm[0+j]=m[len-1-j];
    }
    for (int j=0; j<len; j++)
    {
        m[j]+=mm[j];
        if (m[j]>=n)
        {
            m[j+1]+=m[j]/n;
            m[j]%=n;
            if (j+1==len) len++;
        }
    }
}

bool huwe()
{
    for (int j=0; j<=len/2; j++)
    {
        if (m[j]!=m[len-1-i]) return false;
    }
    return true;
}
int main()
{
    int n;
    string s;
    cin >> n;
    cin >> s;
    get(s);
    for (int k=3; k<=30; k++)
    {
        plus(n);
        if (huwe())
        {
            cout << "STEP=" << k;
            return 0;
        }
    }
    cout << " Impossible!" << endl;
    return 0;
}
2022/10/19 19:49
加载中...