North America - Greater NY 2013

转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents    by---cxlove

A:直接枚举岛的两个端点,两侧要低,中间部分不能低于两端。


B:直接计算两个自行车的相遇时间。


C:按拓扑序暴力。


D:直接暴力求循环节


E:容斥原理,枚举前i个有多少个是对的,剩下的任意。


F:DP,dp[i][j][k]表示三行的情况。


G:对于某个度为1的点,三角形的另外两个端点肯定在这个顶点的两侧第一个非0的端点。


H:打表找一下规律,发现答案是p ^ {i - j} * /binom {i}{j}


I:尝试为果。。。又是留了个几何的坑。大概就是有个三角形,找一个点,使得/sum_{i = 0}^{2} {(0.2 + e[i]) * dist[i] ^ 2}最小。

尝试了一发模拟退火,失败。

推了一下式子,先求出三角形三条边的直线方程,然后可以求出距离,得到式子,再分析最值。理论上应该是这样做的,但是我比较懒,发现式子会比较复杂。。。。


code:https://github.com/cxlove/ACM_ICPC/tree/master/Regional/North%20America%20-%20Greater%20NY_2013


你可能感兴趣的:(ACM_比赛题解)