3 条题解
-
0
筛完质数就差不多做完了
#include <iostream> #include <stack> #include <cmath> #include <vector> #include <string.h> #include <queue> #include <stdio.h> #include <iomanip> #include <cstdio> #include <algorithm> #define int long long using namespace std; const int N = 1e5 + 10; const int INF = 0x3f3f3f3f; int s; bool prime[N]; void find_prime(int x) { prime[1] = 1; for(int i = 2; i * i <= x; i++) { if(prime[i] == 0) { for(int j = i * i; j <= x; j += i) { prime[j] = 1; } } } } signed main() { int s; cin >> s; find_prime(s); if(s % 2 == 1) { cout << 2 * (s - 2) << endl; return 0; } int maxx = -INF; for(int i = 1; i <= s; i++) { if(prime[i] == 0) { if(prime[s - i] == 0) { maxx = max(maxx, i * (s - i)); } } } cout << maxx << endl; return 0; }
信息
- ID
- 974
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 5
- 标签
- 递交数
- 462
- 已通过
- 165
- 上传者