zoukankan      html  css  js  c++  java
  • Design Tutorial: Learn from Math(哥德巴赫猜想)

    Problem description

    One way to create a task is to learn from math. You can generate some random math statement or modify some theorems to get something new and build a new task from that.

    For example, there is a statement called the "Goldbach's conjecture". It says: "each even number no less than four can be expressed as the sum of two primes". Let's modify it. How about a statement like that: "each integer no less than 12 can be expressed as the sum of two composite numbers." Not like the Goldbach's conjecture, I can prove this theorem.

    You are given an integer n no less than 12, express it as a sum of two composite numbers.

    Input

    The only line contains an integer n (12 ≤ n ≤ 106).

    Output

    Output two composite integers x and y (1 < x, y < n) such that x + y = n. If there are multiple solutions, you can output any of them.

    Examples

    Input

    12
    15
    23
    1000000

    Output

    4 8
    6 9
    8 15
    500000 500000

    Note

    In the first example, 12 = 4 + 8 and both 4, 8 are composite numbers. You can output "6 6" or "8 4" as well.

    In the second example, 15 = 6 + 9. Note that you can't output "1 14" because 1 is not a composite number.

    解题思路:每个不小于12的整数可以表示为两个合成数之和,若满足条件有多组,则输出其中的一组,简单判断即可。

    AC代码:

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 bool isprime(int x){
     4     for(int i=2;i*i<=x;++i)
     5         if(x%i==0)return false;
     6     return true;
     7 }
     8 int main(){
     9     int n;cin>>n;
    10     for(int i=4;;i+=2)
    11         if(!isprime(n-i)){cout<<i<<' '<<(n-i)<<endl;break;}
    12     return 0;
    13 }
  • 相关阅读:
    python习题-用交集方式产生随机密码
    python习题-产生8位随机密码要包含大小写及数字
    python习题-替换敏感词
    python习题-注册用户程序
    Python习题-登录
    Python习题-统计日志中访问次数超过限制的IP
    PyCharm配置过程记录
    jmeter 多压力机并发测试过程
    Jmete基础使用
    Linux 中直接 I/O 机制的介绍
  • 原文地址:https://www.cnblogs.com/acgoto/p/9170528.html
Copyright © 2011-2022 走看看