Oct.17 膜你赛

Posted on 2017-10-29 17:20  Murs  阅读(110)  评论(0)    收藏  举报

考试时候安排的策略还是不行,总是在调试上浪费太多的时间,写之前一定要把思路梳理清晰一函数命好名或者用便签记录下来,切记不要一边想一边写,判断情况是会漏的。

 

T1还ok只不过在调时候思路没有跟上浪费了很多时间,但是还问题不大

 

AC code


T2就比较狗了(XD)虽然是HAOI2016原题但是没有好好敲过所以现写 DP。。。由于没法将动物名称转换为非重节点,事实证明<字符串hash>是不能写的所以只能放弃,

PS:居然STL中有map这个神奇的东西,不过临时学也不好毕竟考试时没有处学。

Po上帆神的map使用说明书XD

http://blog.163.com/xiaofan_2001/blog/static/1108987772017818103155212

T3

随手打一个暴力。。。。。但是由于空间的限制即使是DP也只能拿到30,所以就不往上贴了。

正解:

       先分别以x坐标和y坐标排序。

用 d[i] 表示不经过 i 前面的黑点,到达 i 点的方案数,显然,答案即为d[n]。

     对于每个点 i ,初始 d[i]=C(a[i].x-1+a[i].y-1,a[i].x-1),表示从点(1,1)到 a[i] 共有多少种方案。然后从 0 到 i-1 枚举 j 号点,若 j 号点能到达i 号点,则d[i]减去从j到i的方案数*d[j],再用组合数曲膜来达到要求范围  

实现work()如下: