《你说空瓶适合许愿》题解
考虑一个递归构造:我们要把 \(2,3,4 \dots,3n+1\) 划分成钝角三角形,如果 \(n\) 为奇数,那么取出 \(\{2,3n,3n+1\}\),剩下的分成 \(\{4,6,8,\dots,3n-1\}\) 和 \(\{3,5,7,\dots,3n\}\) 两个序列,将这两个序列从 \(2\) 开始标号后照葫芦画瓢递归到
\(\frac {n-1} {2}\) 做;如果 \(n\) 为偶数,那么取出 \(\{2,3n-2,3n-1\},\{3,3n,3n+1\}\),剩下的分成 \(\{4,6,8,\dots,3n-4\}\) 和 \(\{5,7,9,\dots,3n-3\}\) 递归到 \(\frac {n-3} {2}\) 做。递归边界是 \(n=1\) 时取 \(\{2,3,4\}\),\(n=2\) 时取 \(\{2,4,5\},\{3,6,7\}\)。
考虑这样做的正确性。对于最终的三角形(即递归边界中的那三种三角形)\((a,b,c)\),在 \(n\) 为奇数时可能会被变成 \((2a-1,2b-1,2c-1)\) 或 \((2a,2b,2c)\),在 \(n\) 为偶数时可能会被变成 \((2a+1,2b+1,2c+1)\) 或 \((2a,2b,2c)\)。于是最终得到的所有三角形会形如 \((ka+r,kb+r,kc+r)\),其中 \(|r|<k\) 且 \(k\) 是 \(2\) 的次幂。
我们希望这样的三角形都是钝角三角形,于是有 \(ka+r+kb+r>kc+r\) 且 \((ka+r)^2+(kb+r)^2<(kc+r)^2\)。前者即 \(k(a+b-c)+r>0\) 显然满足,但是后者呢?
当且仅当 \((c+1)^2-(b+1)^2-(a+1)^2>0\) 时对于所有 \(k\) 都成立(注意等号可以取到)。
但是 \((3+1,6+1,7+1)=(4,7,8)\) 居然是锐角三角形!怎么办呢?暴搜!
\(n=2\) 特判,然后递归边界设为 \(n=1,n=4,n=5,n=6\),用合理的暴搜可以秒出结果。然后这题就做完了。