P7200 「COCI2019/2020#1」Lutrija
发现相邻的奇数只能恰好差 \(2\),因为偶质数只有 \(2\)。
而大于 \(3\) 的三个连续奇数除了 3 5 7 这种特殊情况外至少有一个是能被 \(3\) 整除的合数。特殊情况可以构造成 3 5 2 和 7 5 2 以归入下面的构造方法。
所以相邻的奇数最多只有两个,用偶质数 \(2\) 将它们隔开。显然,放多个 \(2\) 没有意义。
于是我们就有 A A-2/A+2 2 B-2/B+2 B 这样的构造形式,根据情况可以省略部分。
这样就能过了,本着精益求精的精神我们继续探究。
拿 \(A\) 来讲,前半部分存在的必要条件是 \(A\) 是一对孪生质数中的一个。如果 \(A\) 和 \(A-2\) 是孪生质数,那么我们显然不需要再构造一个 \(A-2\) 项因为 \(A\) 与 \(2\) 的差本就是 \(A-2\)。
所以构造形式简化为 A (A+2) (2) (B+2) B。时间复杂度仅在于判断质数。
值得注意的是,除了 3 5 7 外我们构造出来的解也是长度最短的。
                    
                
                
            
        
浙公网安备 33010602011771号