给定长度为 n 的数组 a,定义三元组 (i,j,k)(i<j<k)为“好”的充要条件是
三对数的 gcd 要么全部为 1,要么全部大于 1。
关键观察:Ramsey 定理给出 R(3,3)=6——任意 6 个点的完全图二染色(两种颜色分别代表“gcd=1 的边”和“gcd>1 的边”)中,必然存在一个单色三角形。
对应到本题,当 n ≥ 6 时,不管数组取值如何,前 6 个下标中一定存在一个好三元组(三对 gcd 全为 1 或全大于 1)。
据此可将问题大幅简化为常数规模检查:
给定一个长度为 n 的数组 a 。一个整数三元组 (i,j,k) 被称为好的当且仅当:
1≤i<j<k≤n ;
其三个元素对应的 gcd 值要么全部为 1 ,要么全部大于 1 ,使用数学语言表达,即 max{gcd(ai,aj),gcd(aj,ak),gcd(ai,ak)}=1 或 min {gcd(ai,aj),gcd(aj,ak),gcd(ai,ak)>1 。