数据#2本地也是对的啊
by Red_Cow @ 2023-11-21 19:06:26
```cpp
#include <bits/stdc++.h>
using namespace std;
int n,s[150],a[2][150],len,k;
char ch;
int main(){
cin>>n;
while(cin>>ch){
if(ch>='0'&&ch<='9') s[++k]=ch-48;
else s[++k]=ch-55;
}
for(int i=k;i>=1;i--) a[0][i]=s[k+1-i];
len=k;
for(int i=1;i<=30;i++){
memset(a[i&1],0,sizeof(a[i&1]));
for(int j=len;j>=1;j--){
a[i&1][j]+=a[(i-1)&1][j]+a[(i-1)&1][len+1-j];
a[i&1][j-1]+=a[i&1][j]/n;
a[i&1][j]%=n;
}
bool b=true;
if(a[i&1][0]){
for(int j=len;j>=0;j--)
a[i&1][j+1]=a[i&1][j];
len++;
a[i&1][0]=0;
}
for(int j=1;j<=(len+1)/2;j++)
if(a[i&1][j]!=a[i&1][len+1-j])
b=false;
if(b){
cout<<"STEP="<<i;
return 0;
}
}
cout<<"Impossible!";
return 0;
}
```
by zrl123456 @ 2023-12-18 21:49:48