ACM训练日记—8月17日

来源:互联网 发布:北京南站离北京站源码 编辑:程序博客网 时间:2024/05/22 16:58

         今天除了上午继续看树状数组课件以外,下午进行了第一次团体训练,虽然成绩不怎么理想,从中也找到自己许多的不足。

        做第一道题时其实就有些困难,虽然我们是第一个做出来的,给了几头牛的重量与强壮度,要求把这些牛摞起来,每头牛的风险是该头牛上面的牛的重量相加减该牛的强壮度,求怎么摞起来使最大风险最低,这道题很明显,重量大的牛优先放下面,力量强的优先放下面,在我还在纠结力量和重量那个优先时,队友的一句话点醒了我,每头牛力量与重量相加大的数放下面,这么简单的贪心,我真是对自己思维僵化担心了。

       第二道题讲的是给出几只牛的位置,互相之间位置的差就是牛产生的分贝,求所有的噪音最大,这个题我在草纸上演算了很长时间,设n只牛,分别a1,a2,,,an,用用sort排从小到大下序,由此推第一头牛是a2-a1,a3-a1,,,,,,,an-a1。由此写出所有牛之间的噪音,最后相加得到公式,推了好长时间。

       第三道题是我在推公式时队友做的,是一道做过的题,青蛙跳石头,已知河宽,和石头位置要求拿掉k块石头,求最大距离的最小值,大致就是二分题,河中剩的石头越多,最宽处的最小值越小,有明显的单调关系,二分套路解。

       在做第四道题时彻底卡住了,一道明显的图论题,因为一时没想到怎么记录路径,被我用深搜做的,不出意料的超时了,比赛结束后看完题解,其实就是用迪杰特拉斯算法求最短路径,同时用一个数组记录下标位置的点的上一步在哪,由此倒着记录出路径,真心感觉自己还要在多下功夫,自己是在是太笨了。。。

原创粉丝点击