题意
宫水三叶擅长手工,比如用绳子围住一个带钉子的木板。
这是一个很大的木板,我们可以用一个平面直角坐标系来描述它。
木板上面有 n n n 个钉子,第 i i i 个钉子的坐标为 ( x i , y i ) (x_i,y_i) (xi,yi) 。
三叶可以用一些绳子连接一些点,这些绳子连接的点有一个限制。
首先,这些绳子连成的图形必须要是一个封闭的凸多边形。其次,绳子可能经过除端点外的其它点,但是没有两条绳子在同一条直线上。形象化的说,这是一个凸包,使用的绳子数就是边数。
对于一个图形,我们可以把所有钉子分成三类。
1、凸包的顶点。
2、在凸包内或在凸包边上,但是不是凸包顶点。
3、不在凸包内。
假设这三类点分别有 x , y , z x,y,z x,y,z 个,那么三叶认为这个图形的价值为 x ⋅ a x ⋅ b y ⋅ c z x \cdot a^x \cdot b^y \cdot c^z x⋅ax⋅by⋅cz ,其中 a , b , c a,b,c a,b,c 为给定的三个整数,它们之间有个特殊的关系 a + c = b a+c=b a+c=b 。
三叶想知道,对于所有不同的图形,它们各自的价值的总和是多少。
两个图形 A , B A,B A,B 不同,只需要满足其中某一条绳子在 A A A 中出现并且在 B B B 中没出现或者在 B B B 中出现并且在 A A A 中没出现。
题解
slz所谓的签到题 (全场高达5个人得分呢) 。
因为直接做不好算,考虑一个凸包贡献的组合意义:如果这个凸包是一些点的极大凸包,那么这个凸包上的点必须出现,凸包外面的点一定不出现,凸包内的点可以出现或不出现,这恰好与题意相对应:即每个点有a种情况出现,c中情况不出现,所有情况对用的凸包的边数和。
于是考虑每条边的贡献,即一侧至少有一个点,另一侧及延长线上没有点,在这条边内的点可有可没有,于是枚举一个端点,另一个端点按照一个方向扫一遍过去即可。