[Offer收割]编程练习赛12 register

Ended

Participants:1323

Verdict:Accepted
Score:100 / 100
Submitted:2017-04-02 12:06:02

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <algorithm>
using namespace std;
const int N = 1000001;
bool flag[N];
int main(){
    flag[0] = true;
    flag[1] = true;
    for (int i = 2; i < N; i++){
        if (!flag[i]){
            int t = i + i;
            while (t < N){
                flag[t] = true;
                t += i;
            }
        }
    }
    int n;
    scanf("%d",&n);
    for (int i = 0; i < n; i++){
        if (!flag[i] && !flag[n-i]){
            printf("%d %d\n",i,n-i);
            break;
        }
    }
    return 0;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX