题面传送门
很明显,
c
f
cf
cf第一题的老套路:构造题,只可惜这道构造题不太好,连暴力都能
A
A
A
我们来尝试构造一下,题目要求构造出
x
x
x和
y
y
y使得
l
c
m
(
x
,
y
)
+
g
c
d
(
x
,
y
)
=
n
lcm(x,y)+gcd(x,y)=n
lcm(x,y)+gcd(x,y)=n,既然有了公约数,那我们就很容易往互质那方面想了,如果
x
x
x,
y
y
y互质,那么原式变为
1
+
x
y
=
n
1+xy=n
1+xy=n,只要解这个方程就好了。但解这个方程还要枚举,从最特殊的方面来想,如果
n
−
1
n-1
n−1是质数,那么只有
x
=
1
x=1
x=1且
y
=
n
−
1
y=n-1
y=n−1一种解,这种解对于其他的数也同样适用,所以就可以构造出解法来了。
代码实现:
#include<cstdio>
using namespace std;
int t,n;
int main(){
scanf("%d",&t);
while(t--){
scanf("%d",&n);
printf("%d %d\n",1,n-1);
}
}