CF1665A GCD vs LCM 题解

题意

给出一个数 \(n\), 求一组解 \(a, b, c, d\), 使 \(\gcd(a, b) = lcm(c, d)\)

可以想到让 \(a\)\(b\) 的因数, \(c\)\(d\) 的倍数,只需要让 \(a =c\) 就可以解决。

不妨设 \(d\) 是 1, \(c\) 只有为 1 是才可以满足条件, 相同的,再设 \(a\) 是 1, \(b\) 无论取那个数都可以满足条件。 又因为和为 \(n\), 所以最后的答案就是 \(1, n - 3, 1, 1\)

#include <bits/stdc++.h>

using i64 = long long;

void solve() {
	int n;
	std::cin >> n;
	std::cout << 1 << " " << (n - 3) << " " << 1 << " " << 1 << "\n";
}

int main() {
	std::ios::sync_with_stdio(false);
	std::cin.tie(nullptr);
	
	int T;
	std::cin >> T;
	while (T--) {
		solve();
	}

	return 0;
}


posted @ 2022-04-10 11:50  落花月朦胧  阅读(79)  评论(0编辑  收藏  举报