题意:
给三个数组$A_n,B_n,C_n$,求满足条件的对数有几对?
PS:!! 垃圾板子一时爽,好板子一直爽!!
- $\left|A-B\right|\leq C$
- $\left|C-B\right|\leq A$
- $\left|A-C\right|\leq B$
也就是A,B,C构成三角形。那么只需要满足
所以对于$c$我们可以求出有多少$|a-b|,|a+b|$满足上面等式
此时就可以想到使用$FFT$求出对数。
又根据容斥原理,对于$C$
此题最坑的在于小范围暴力
代码
1 |
|
给三个数组$A_n,B_n,C_n$,求满足条件的对数有几对?
PS:!! 垃圾板子一时爽,好板子一直爽!!
也就是A,B,C构成三角形。那么只需要满足
所以对于$c$我们可以求出有多少$|a-b|,|a+b|$满足上面等式
此时就可以想到使用$FFT$求出对数。
又根据容斥原理,对于$C$
此题最坑的在于小范围暴力
1 | #include <iostream> |