天天看点

CF1325A EhAb AnD gCd

题面传送门

很明显, 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);
	}
}
           

继续阅读