HDU 2061 An easy problem(水)
暴力枚举,a+b+a*b = N,(a+1)*(b+1) = N+1,10^5枚举起来吧。。。
1 #include <stdio.h> 2 #include <string.h> 3 #include <stdlib.h> 4 #include <math.h> 5 #define N 1000000000 6 int main() 7 { 8 int i,t,k,num; 9 __int64 n; 10 scanf("%d",&t); 11 while(t--) 12 { 13 scanf("%I64d",&n); 14 num = 0; 15 k = (int)(sqrt(n+1)); 16 for(i = 1;i <= k-1;i ++) 17 { 18 if((n+1)%(i+1) == 0) 19 num ++; 20 } 21 printf("%d\n",num); 22 } 23 return 0; 24 }