CF472A Design Tutorial: Learn from Math

题目描述

创建编程任务的一种思路是从数学知识中获取灵感:你可以随机生成数学命题,或是对已有定理进行修改,以此得到全新的内容并基于此构建新题目。 举个例子,有一个著名的“哥德巴赫猜想”:‌每个不小于 $4$ 的偶数都可以表示为两个素数之和‌。我们对这个命题做一点修改,得到新的命题:‌每个不小于 $12$ 的整数都可以表示为两个合数之和‌。和哥德巴赫猜想不同,这个新命题是可以被严格证明的。 现在给你一个不小于 $12$ 的整数 $n$,请你把它表示为两个合数的和。

输入格式

仅一行输入,包含一个整数 $n$,满足约束条件:$12 \le n \le 10^6$。

输出格式

输出两个合数 $x$ 和 $y$,要求满足 $1 < x,y < n$,且 $x + y = n$。如果存在多组符合条件的解,输出任意一组即可。

说明/提示

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.