随笔分类 -  13成都邀请赛(杭电warm2)

摘要:题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4717第一次写三分,这个解法是学解题报告的,感谢原作者。首先对每对点对,他们的距离关于时间t是二次函数,现在就是求c[n][2] 个二次函数,每个点取最大值构成的函数的极值。 由于每个子函数都是先减后增,或者对称轴小于0,直接单增,他们的max一定也保持着这个性质 (具体证明和n个下凸函数max还是下凸函数很像?)然后取100次精度就够了代码:#include #include #include using namespace std; int x[300],y[300],vx[300],vy[3. 阅读全文
posted @ 2013-09-23 23:30 814jingqi 阅读(127) 评论(0) 推荐(0)
摘要:题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4722考虑怎样的数可以成为good number ,如果不给范围,取一个n位数 (最高位-1)*10*10....最后一位由前面的和决定。 首先不考虑0基于这样的思想 比如不超过54321的good number 有多少 ,1~4位有9+9*10+9*10*10(等比求和) 5位就是4*10*10*10+ 第一位是5 剩下的部分mod10==5,而且不超过4321这样就可以设计递归了。然后就是递归函数设计中 应该是long long的始终不要丢失精度 , 第二个参数递归下降时 不忘+10 再去mo. 阅读全文
posted @ 2013-09-12 01:12 814jingqi 阅读(103) 评论(0) 推荐(0)
摘要:题目地址 :http://acm.hdu.edu.cn/showproblem.php?pid=4720题目是给三个点 ,要求求出最小的能覆盖这三个点的圆,然后判断第四个点在不在这个圆内。如果这个是一个钝角三角形,那么圆心就是最长边的中点,如果是锐角三角形,圆心就是外接圆圆心。 然后用点到圆心的距离和半径的关系判断是不是在圆内。求外接圆时 用到向量点积为0,还有Crammer法则解方程代码:#include #include using namespace std; double calcdet(double p[2][2] ) //计算行列式的值 { double... 阅读全文
posted @ 2013-09-11 18:27 814jingqi 阅读(174) 评论(0) 推荐(0)