fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define MP make_pair
  5. #define PB push_back
  6. #define FOR(init,num,inc) for(int i=init; i<num;i=i+inc)
  7. #define N "\n"
  8. #define VII vector<int> :: iterator
  9. #define VILLI vector<long long int> :: iterator
  10. #define my_input(n) for(int i=0,a;i<n;i++) {cin>>a; v.PB(a);}
  11. #define sz size()
  12. #define fst first
  13. #define snd second
  14. #define FV 100005
  15. #define SX 1000005
  16. #define scint(a) scanf("%d", &a)
  17. //freopen("input.txt", "r", stdin);
  18. //freopen("output.txt", "w", stdout);
  19.  
  20. typedef int I;
  21. typedef long long int llint;
  22. typedef vector<int> VI;
  23. typedef vector<long long int > VLLI;
  24. typedef vector<string> VS;
  25. typedef set<int> SI;
  26. typedef set<long long int> SLLI;
  27. typedef set<string> SS;
  28.  
  29. int aar[1003], ar[10030], dp[10030];
  30.  
  31. void prime(int n )
  32. {
  33. int flag=0;
  34. if(n==1) return ;
  35. for(int i=2; i<=sqrt(n); i++)
  36. {
  37. if(n%i==0) {ar[i]++; flag=1; n=n/i; break;}
  38. }
  39. if(flag!=0)
  40. prime(n);
  41. else
  42. {
  43. ar[n]++;
  44. }
  45. }
  46.  
  47. int main()
  48. {
  49.  
  50. llint ans=0, d=0, d2=0;
  51. for(int i=0; i< 10 ; i++)
  52. {
  53. cin>>aar[i];
  54. }
  55. for(int i=0; i<10; i++)
  56. {
  57. prime(aar[i]);
  58. }
  59. for(int i=2; i<=10000;i++)
  60. {
  61. if(ar[i]>0)
  62. {
  63. d++;
  64. d2+=ar[i];
  65. dp[ar[i]]++;
  66. }
  67. }
  68.  
  69.  
  70. for(int i=10000; i>=1; i--)
  71. {
  72. dp[i]=dp[i]+dp[i+1];
  73. }
  74. if(d==0) {cout<<1; return 0;}
  75. ans+=d; ans+=2;
  76.  
  77.  
  78. for(int i=d2-1;i>=2; i-- )
  79. {
  80. int x=d2-i+1;
  81. ans+=dp[x];
  82. for(int j=x-1; j>x/2; j--)
  83. {
  84. ans+=(llint)dp[j]*(dp[x-j]-1);
  85. }
  86. if(x%2==0)
  87. {
  88. ans+=(((llint)dp[x/2]-1)*dp[x/2])/2;
  89. }
  90.  
  91.  
  92. }
  93. cout<<ans%10;
  94.  
  95. }
  96.  
Success #stdin #stdout 0s 4460KB
stdin
Standard input is empty
stdout
1