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 }
View Code

 

你可能感兴趣的:(System)