#include #define bool int #define true 1 #define false 0 #define N 10005 #define for_i(i, range, inner) \ { \ int i; \ for (i = 0; i < range; i++) \ inner; \ } bool not_prime[N]; void pre(int n) { int prime[N], prime_length = 0; int i; for (i = 2; i <= n; ++i) { if (!not_prime[i]) { prime[prime_length++] = i; } for_i(j, prime_length, { int pri_j = prime[j]; if (i * pri_j > n) break; not_prime[i * pri_j] = true; if (i % pri_j == 0) { break; } }) } } int main() { int n; scanf("%d", &n); pre(n); { int i = 2; while (true) { if (!not_prime[i] && !not_prime[n - i]) { printf("%d=%d+%d", n, i, n - i); return 0; } i++; } } return 0; }