fork(2) download
  1. #include <iostream>
  2. #include <cstdio>
  3.  
  4. using namespace std;
  5.  
  6. int prime(int);
  7.  
  8. int main()
  9. {
  10. int t,n,i,s,tot,y;
  11. scanf("%d",&t);
  12. while(t>0)
  13. {
  14. scanf("%d",&n);
  15. int a;
  16. int b[999989]={0};
  17. tot=1;
  18. for(i=0;i<n;i++)
  19. {
  20. //printf("\n taking values...");
  21. scanf("%d",&a);
  22. s=2;
  23. while(a>1)
  24. {
  25. if(s<=a)
  26. {
  27. y=prime(s);
  28. if(y==1)
  29. {if(a%s==0)
  30. {
  31. b[s]=b[s]+1;
  32. a/=s;
  33. //printf(" \n now b =%d and a =%d",b[s],a);
  34. }
  35. }
  36. else
  37. s++;
  38. }
  39. };
  40. }
  41. for(i=0;i<999989;i++)
  42. {
  43. if(b[i]>0)
  44. tot*=(b[i]+1);
  45. }
  46. printf("%d\n",tot);
  47. t--;
  48. };
  49. return 0;
  50. }
  51. int prime(int n)
  52. {
  53. int flag=0;
  54. if(n==2)
  55. return 1;
  56. for(int i=2;i<n;i++)
  57. {
  58. if(n%i==0)
  59. {
  60. flag=1;
  61. break;
  62. }
  63. }
  64. if(flag==0)
  65. return 1;
  66. else
  67. return 0;
  68. }
Time limit exceeded #stdin #stdout 5s 6676KB
stdin
1
3
3 5 7
stdout
Standard output is empty