摘要:题目:A Shooting Game题目大意:题目好长>_ 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 typedef long long LL; 8 #define FOR(i, s, t) for(int i = s; i EPS) return a[p1][p2][p3][p4][p5][p6];18 if(p1 + p2 + p3 + p4 + p5 + p6 == 0) return 0;19 int v1, v2, v3, v4, v5, v6;20 do...
阅读全文
摘要:题目:Repairing a Road题目大意:有一个C个点R条无向边(这俩字母好别扭……),每条边有一个花费vi和一个ai(浮点数)。现在我们有一个人,可以花费 t(你爱多大就多大)的时间该修一条道路,什么时候开始修随你,修到什么时候随你,不过修的时候此路不通。如果总共修了t时间,那么这条路的花费就会变成 vi * ai ^ (-t)。我们要从1走到C,求最小花费(花费就是时间)。思路:首先要修路,肯定是从一开始就开始修,因为看出修得越久该路的花费就越少(不要告诉我你看不出那个是单调递减的函数),所以修的 时间越长越好,而且,总不会说,我从这条路走过去了,然后你再开始修,修了一段时间,我再走
阅读全文
摘要:题目:Biggest Number题目大意:有一个R*C的矩阵,矩阵里面有1~9的数字(太好了不用处理前导0),或者是#(代表不能通过),先要从矩阵任意一点出发(之前英语抓鸡看成 了边界,英语差的孩纸伤不起啊>_ 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 typedef long long LL; 8 9 const int MAXN = 33;10 11 struct Node {12 int a[MAXN], len;13 void clear() {14 ...
阅读全文
摘要:题目:here题目大意:给出CF[0]0,i>0,求IRR(IRR>-1)令NPV = 0.思路:设f(IRR) = NPV,这就变成了一个函数,稍微观察一下,可以发现当IRR∈(-1, +∞)的时候是单调递减的(好像是吧做完忘了),这样我们就可以二分答案0点了。当IRR无限接近-1的时候,f(IRR)→+∞(好像是吧),当 IRR→+∞时,f(IRR)→CF[0] 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int MAXN = 13; 9 const double EP
阅读全文
摘要:题目:here题目大意:一个半径为R的圆以一个角度α和恒定速度v在一个L*W的场地中乱撞,撞墙后反射的方向与镜面反射相同。思路:首先,一个圆在[0,L]、[0,W]里乱撞,相当于一个这个圆的圆心在[R, L-R], [R, W-R]里乱撞。答案也是要圆心,那么只考虑圆心即可。之后,速度是恒定的,横向速度和纵向速度也是不变的,假设场地为无限大,那么我们一开始就可以算出 最终坐标(理论上来说极限数据会爆double的精度,但是AC了,我就不管了……要是真WA了我们可以试试long double……)。然后x、y完全可以分开算,他们之间一点影响都木有。于是考虑x,若有一堵墙在L-R处,如果没有墙L我
阅读全文