BZOJ P3158 千钧一发

题目中的条件有一个非常好的性质

就是奇数都满足第一条

(2a+1)^2+(2b+1)^2=4a^2+4a+1+4b^2+4b+1=2*(2a^2+2a+2b^2+2b+1)

因为有个2所以为了成为平方数,后面的数一定得能质因数分解出一个2,但是后面的数显然是奇数,所以不能分解2

然后偶数都能满足第二条

这很简单吧gcd(2a,2b)>=2

然后按照偶数奇数建一个二分图

一旦是不符合的两个数的就连边,然后求最大点独立集就可以了

你可能感兴趣的:(BZOJ P3158 千钧一发)