
10093
By: a guest on
Mar 25th, 2012 | syntax:
C++ | size: 0.85 KB | hits: 43 | expires: Never
/*
uva - 10093
written by shaheen
*/
#include<iostream>
#include<cstring>
#include<cstdio>
#include<cctype>
using namespace std;
int main()
{
string s;
while(cin >> s)
{
int base = 2,n,sum=0;
int len = s.length();
for(int i=0;i<len;i++)
{
n=0;
if(isdigit(s[i]))
{ n=s[i]-48;
sum+=n;
if(n+1>base) base=n+1;
}
else if(isupper(s[i]))
{ n=s[i]-'A'+10;
sum+=n;
if(n+1>base) base=n+1;
}
else if(islower(s[i]))
{ n=s[i]-'a'+36;
sum+=n;
if(n+1>base) base=n+1;
}
}
bool flag;
for(int j = base;n<=62;j++)
if(sum%(j-1)==0)
{printf("%d\n",j);
flag=true;
break;
}
if(!flag) printf("such number is impossible!\n");
s.clear();
}
return 0;
}