提交时间:2024-02-19 12:14:34

运行 ID: 41120

#include<iostream> #include<cstring> using namespace std; bool air(char c[]) { for(int i=0;i<strlen(c);i++){ if(c[i]!=c[strlen(c)-1-i])return 0; } return 1; } int main() { int n,step=0; char a[101];int b[110]; cin>>n; cin>>a; int len=strlen (a); while(air(a)==0&&step<=30){ int x=0; for(int i=0;i<len;i++){ b[i]=(a[i]-'0'+a[len-1-i]-'0'+x)%n; x=(a[i]-'0'+a[len-1-i]-'0')/n; } if(x>0)b[len++]=x; for(int i=0;i<len;i++){ a[i]=b[i]+'0'; } step++; } if(step<=30)cout<<"STEP="<<step<<endl; else cout<<"Impossible!"; return 0; }