DTOJ 4847. 凸包的价值

题意

宫水三叶擅长手工,比如用绳子围住一个带钉子的木板。

这是一个很大的木板,我们可以用一个平面直角坐标系来描述它。

木板上面有 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 xaxbycz ,其中 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中情况不出现,所有情况对用的凸包的边数和。
于是考虑每条边的贡献,即一侧至少有一个点,另一侧及延长线上没有点,在这条边内的点可有可没有,于是枚举一个端点,另一个端点按照一个方向扫一遍过去即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值