fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. long long int largpr[200000005];
  5. //long long int constant = 19;
  6. long long int constant = 199999999;
  7.  
  8. void sieve(){
  9. long long int i, j, c, t;
  10. for(i = 0; i < 200000005; i++) largpr[i] = 1;
  11. for(i = 2; i < 200000005; i++){
  12. if(largpr[i] == 1){
  13. largpr[i] = i;
  14. for(j = 2 * i; j < 200000005; j += i){
  15. largpr[j] = i;
  16. }
  17. }
  18. }
  19. }
  20.  
  21. int main() {
  22. sieve();
  23. long long int i, t, w, v, p, c;
  24. // cout << largpr[462] << endl << largpr[93] << endl << largpr[31] << endl << largpr[42];
  25. for(i = 150000000; i <= 150000000; i++){
  26. w = largpr[i];
  27. c = 0;
  28. p = 1;
  29. t = i;
  30. while(t != 1){
  31. v = largpr[t];
  32. // cout << "v = " << v << endl;
  33. t = t / v;
  34. if(w == v) c++;
  35. else{
  36. p *= (2 * c + 1);
  37. c = 1;
  38. w = v;
  39. }
  40. }
  41. p *= (2 * c + 1);
  42. if(p > constant){ cout << i << endl; break; }
  43. // cout << i << " " << p << endl;
  44.  
  45. }
  46. return 0;
  47. }
  48.  
Time limit exceeded #stdin #stdout 5s 1577984KB
stdin
Standard input is empty
stdout
Standard output is empty