Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cstdlib>
  4. #include <algorithm>
  5. #include <cmath>
  6. #include <vector>
  7. #include <set>
  8. #include <map>
  9. #include <unordered_set>
  10. #include <unordered_map>
  11. #include <queue>
  12. #include <ctime>
  13. #include <cassert>
  14. #include <complex>
  15. #include <string>
  16. #include <cstring>
  17. #include <chrono>
  18. #include <random>
  19. #include <queue>
  20. #include <bitset>
  21. using namespace std;
  22.  
  23. typedef long long ll;
  24. typedef pair<int, int> pii;
  25. typedef pair<ll, int> pli;
  26. typedef pair<ll, ll> pll;
  27. typedef long double ld;
  28. #define mp make_pair
  29.  
  30. mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
  31.  
  32. string getString() {
  33. char buf[13];
  34. scanf("%s", buf);
  35. return string(buf);
  36. }
  37.  
  38. const int N = 1e6 + 4;
  39. char prime[N];
  40.  
  41. int n;
  42.  
  43. int main() {
  44. scanf("%d", &n);
  45. string s = getString();
  46.  
  47. while (s.size() < 6) {
  48. s += '1';
  49. }
  50.  
  51. if (s.size() == 12) {
  52. cout << s;
  53. return 0;
  54. }
  55. ll a = stoll(s);
  56.  
  57. int ost = 12 - s.size();
  58. string lBord = s, rBord = s;
  59. ll pw = 1;
  60. while (lBord.size() < 12) lBord += '0', rBord += '9', pw *= 10;
  61.  
  62. ll l = stoll(lBord), r = stoll(rBord);
  63.  
  64. for (ll i = 2; i < N; ++i) {
  65. ll k = l / i;
  66. while (k * i < l) k++;
  67. while (k * i <= r) {
  68. if (k * i == i) {
  69. k++;
  70. continue;
  71. }
  72. prime[k*i - pw*a] = 1;
  73. k++;
  74. }
  75. }
  76.  
  77. for (int i = 2; i < N; ++i) {
  78. if (prime[i] == 0) {
  79. int sz = ost - to_string(i).size();
  80. printf("%s", s.c_str());
  81. while (sz--) printf("0");
  82. printf("%d", i);
  83. return 0;
  84. }
  85. }
  86.  
  87.  
  88. return 0;
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement