首页 > 代码库 > 1104. Don’t Ask Woman about Her Age(数论)

1104. Don’t Ask Woman about Her Age(数论)

a*b^n(mod(b-1) =a(mod(b-1)

http://acm.timus.ru/problem.aspx?space=1&num=1104

 

 1 #include <stdio.h> 2 #include <string.h> 3  4 char str[1000000 + 10]; 5  6 int CharToInt(char c) 7 { 8     if(c>=0 && c<=9) 9         return c - 0;10     return c - A + 10;11 }12 int main()13 {14     scanf("%s",str);15     int i,n = strlen(str);16     int sum = 0;17     char ch =  ;18     for(i=0; i<n; ++i)19     {20         if(str[i] > ch) ch = str[i];21         sum += CharToInt(str[i]);22     }23     if(ch <=9) i = ch - 0;24     else i = ch -A + 10;25     if(i+1<2) i = 2;26     else i++;27     for(;i<=36; ++i)28         if(sum % (i-1) == 0)29         {30             31             break;32         }33     if(i<=36)34         printf("%d\n",i);35     else36         puts("No solution.");37 }

 

1104. Don’t Ask Woman about Her Age(数论)