hdu 2106 decimal system
1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <cmath> 5 #define maxn 1000 6 using namespace std; 7 char str[maxn]; 8 9 int change(char *s) 10 { 11 int k=strlen(s); 12 int pos; 13 int sum=0; 14 for(int i=0; i<k; i++) 15 { 16 if(s[i]=='(') 17 { 18 pos=i; 19 break; 20 } 21 } 22 int m; 23 if(s[pos+1]=='1') 24 { 25 m=10; 26 } 27 else 28 m=s[pos+1]-'0'; 29 int j=0; 30 for(int i=pos-1; i>=0; i--) 31 { 32 sum+=(s[i]-'0')*pow(m,j); 33 j++; 34 } 35 return sum; 36 } 37 38 int main() 39 { 40 int n; 41 while(scanf("%d",&n)!=EOF) 42 { 43 int sum1=0; 44 for(int i=0; i<n; i++) 45 { 46 scanf("%s",str); 47 sum1+=change(str); 48 } 49 printf("%d\n",sum1); 50 } 51 return 0; 52 }