Description
终其一生,我们在寻找一个原谅。
犯下了太多错,要原谅的那个人,永远都是自己。
Samjia在深夜中望见了没有边界的人生,他没有想到过自己犯下了这么多的错误,他想在他的一生中寻求一个原谅。
他的人生是一个没有边界的平面,平面上有n个错误,每个错误是一个点,每个点i有一定的坐标(x[i],y[i]),有一个参数p 表示每个点有p的概率出现在平面上,注意两个不同的点的出现互相没有影响,Samjia可以在两个点之间连一条线段,两条线段不能在除了端点以外的地方相交,现在Samjia想知道他最多可以连的线段数的期望。
温馨提示:请看最后面的提示:)
本题的答案在mod 100000007意义下计算
Input
第一行两个正整数n和p表示平面上有n个点以及每个点出现概率为p
接下来n行第i行两个实数x[i]和y[i]表示一个点的坐标
保证不存在三点共线
Output
一行一个正整数表示Samjia最多可以连的线段数的期望
Sample Input
3 10000001
0 1
1 0
0 0
Sample Output
39000003
样例说明:
数据中的p为0.3
1×3×(0.3×0.3×0.7)+3×0.3×0.3×0.3=0.27
贡献为1的情况有三种
贡献为3的情况有一种
Data Constraint
对于20%的数据,p=1,1<=n<=5
对于40%的数据,p=1,1<=n<=1000
对于70%的数据,1<=n<=200
对于100%的数据,1<=n<=1000
坐标的绝对值小于等于10^4
保证0<=p<100000007
Hint
欧拉公式
在一个平面图内,设点数为V,边数为E,有界面数为F
一定满足:V+F-E=1
Source:
不愧是大爷出的题目,,感觉被虐惨了23333。。。。
比赛的时候看见欧拉公式感觉很可做,想了半天,移项发现V+F-1=E。
好啊,如果知道F不就直接知道E了?那我40分秒到手啊,认真搞一搞说不定切了。。
然后,F表示有界面数,要F最大,我就想到有一种构造凸包的方法叫做中心法,然后用中心法构造了一波凸包,过了大样例,感觉十分兹瓷,然而并没有什么卵用&#x