首页 > 试题广场 >

222333

[编程题]222333
  • 热度指数:3 时间限制:C/C++ 10秒,其他语言20秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
小Y最近对质数产生了浓厚的兴趣,他认为2和3与其它所有质数具有不同寻常的关联,他正试图去寻找这些关系。可以知道,对于任意质数P>=5,都存在正整数m,n使得P|(2m)*(3n)-1,且m+n<=P。但小Y想知道对于一个质数P,满足上述条件的数对(m,n)中m+n最小的一个。

输入描述:
行数不超过10。
每行包括一个质数P(5 <= P <= 107)。


输出描述:
每行输出两个正整数m,n。若存在多组m,n使得m+n相等,则输出m最小的一组。
示例1

输入

5
7
11
14771

输出

1 1
2 2
2 1
120 61
头像 VagrantAC
发表于 2020-12-12 08:51:23
题解 这个时候,需要枚举方程式的右边,把结果存储一下,之后枚举方程式的左边,观察有没有对应的右边,记录最小值即可。 代码 #include <cstdio> #include <cstring> #include <iostream> #include <a 展开全文