1 条题解
-
0
#include<bits/stdc++.h> using namespace std; #define int unsigned long long int n,ans; string m,s; bool asn(){ string s1=s; reverse(s.begin(),s.end()); if (s1!=s){ return false; } return true; } signed main(){ cin>>n>>m; for(int i=0;i<m.size();i++){ if (m[i]>='A'&&m[i]<='Z'){ m[i]='9'+m[i]-'A'+1; } } s=m; while(!asn()){ string s1=s; reverse(s.begin(),s.end()); string s2; int r=0; for(int i=0;i<s.size();i++){ int x=s[i]-'0'; int y=s1[i]-'0'; char z=(x+y+r)%n+'0'; r=(x+y+r)/n; s2=z+s2; } if (r){ char x=r+'0'; s2=x+s2; } s=s2; ans++; if (ans>30){ cout<<"Impossible!"; return 0; } } cout<<"STEP="<<ans; return 0; }
信息
- ID
- 639
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 6
- 已通过
- 4
- 上传者