标签:
input | output |
---|---|
5
64631
|
646310554187
|
#include <iostream> #include <sstream> #include <fstream> #include <string> #include <vector> #include <deque> #include <queue> #include <stack> #include <set> #include <map> #include <algorithm> #include <functional> #include <utility> #include <bitset> #include <cmath> #include <cstdlib> #include <ctime> #include <cstdio> #include <cstring> #define FOR(i, a, b) for(int i = (a); i <= (b); i++) #define RE(i, n) FOR(i, 1, n) #define FORP(i, a, b) for(int i = (a); i >= (b); i--) #define REP(i, n) for(int i = 0; i <(n); ++i) #define SZ(x) ((int)(x).size ) #define ALL(x) (x).begin(), (x.end()) #define MSET(a, x) memset(a, x, sizeof(a)) using namespace std; typedef long long int ll; typedef pair<int, int> P; int read(){ int x=0,f=1;char ch=getchar(); while(ch<‘0‘||ch>‘9‘){if(ch==‘-‘)f=-1;ch=getchar();} while(ch>=‘0‘&&ch<=‘9‘){x=x*10+ch-‘0‘;ch=getchar();} return x*f; } const double pi=3.14159265358979323846264338327950288L; const double eps=1e-6; const int mod = 1e9 + 7; const int INF = 0x3f3f3f3f; const int MAXN = 1e7; const int xi[] = {0, 0, 1, -1}; const int yi[] = {1, -1, 0, 0}; int N, T; int prime[MAXN+10], cnt = 0; int a[MAXN+10]; void init(){ for(int i = 2; i <= MAXN; i++) a[i] = true; for(int i = 2; i <= MAXN; i++){ if(a[i]){ prime[++cnt] = i; } for(int j = 1; j <= cnt; j++){ if(prime[j]*i > MAXN) break; a[prime[j]*i] = false; if(i%prime[j] == 0) break; } } } int main() { //freopen("in.txt", "r", stdin); int n; init(); ll x, y = 1; cin >> n; if(n == 0){ printf("000000000003\n"); exit(0); } cin >> x; if(n == 12) { printf("%012I64d\n", x); exit(0); } for(int i = n; i < 12; i++) y *= 10; //cout << y << endl; //cout << y*x+1 <<" " <<y*(x+1) << endl; for(ll i = y*x+3; i < y*(x+1); i += 2){ int flag = 1; for(int j = 1; j <= cnt && prime[j] < i; j++){ if(i%prime[j] == 0){ flag = 0; break; } } // cout << i << endl; if(flag){ printf("%012I64d\n", i); break; } } return 0; }
标签:
原文地址:http://www.cnblogs.com/cshg/p/5894704.html