| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 38583 | Gapple | 【S】T1 | C++ | 通过 | 100 | 124 MS | 8004 KB | 1021 | 2025-10-18 12:53:15 |
#include <cstdio> #include <vector> using namespace std; using i64 = long long; i64 gcd(i64 a, i64 b) { return b == 0 ? a : gcd(b, a % b); } i64 gcd(i64 a, i64 b, i64 c) { return gcd(a, gcd(b, c)); } i64 gcd(i64 a, i64 b, i64 c, i64 d, i64 e, i64 f) { return gcd(gcd(a, b, c), gcd(d, e, f)); } int main() { int n; scanf("%d", &n); vector<i64> a(n + 1); for (int i = 1; i <= n; ++i) scanf("%lld", &a[i]); for (int i = 1; i <= n; ++i) { for (int j = i + 1; j <= n; ++j) { for (int k = j + 1; k <= n; ++k) { if (gcd(a[i] * a[j], a[j] * a[k], a[k] * a[i]) * gcd(a[i] * a[i], a[j] * a[j], a[k] * a[k]) == gcd(a[i] * a[j] * a[j], a[j] * a[k] * a[k], a[i] * a[k] * a[k], a[j] * a[i] * a[i], a[k] * a[j] * a[j], a[k] * a[i] * a[i]) * gcd(a[i], a[j], a[k])) { printf("%d %d %d\n", i, j, k); return 0; } } } } puts("-1 -1 -1"); return 0; }