2017.9.10开学第二周总结(上)(周六比赛)

来源:互联网 发布:我的世界js制作器 编辑:程序博客网 时间:2024/06/17 03:29

这个周末打了两场比赛,我们队三个人全程到了,都努力了,感觉很不错~

周六的比赛,我们A了三道题,a,c,h

c题是很水的题。。基本签到吧,

a也算是水题,建结构体,保存下,排个序,再遍历一遍,再更新联系一下,最后排个续可以了。也不是很难。

h题有点烦~一开始是题意没有读明白,认为点值的大小就是点的高度,所以。。肯定WA了

后来又一点点读题,才发现关键的一句,说的是给的数据,一定是  高的点   低的点    两点间距离   。。然后就又重新做呗

多亏以前做题用过一种储存方法,数组储存可被到达的次数,每次查找起点,更新最值,储存各点若为起点的距离,除去包含起点的路径,循环查找起点,没有起点结束

感觉没什么算法。。不过中间因为每次起点可能有多个,而且可能多条路径起点相同,所以除去路径要储存起点,最后统一除去起点值,

还有一个题E: Half-consecutive Numbe。。。没A出来。。简直憋屈。。一开始以为是多数据处理。。没想到就23个符合条件的数。。打个表,暴力都能解决。。

然而。。然而。。当时敲代码时,有一步判断sqrt(r)*sqrt(r)==r,出错了。。但是按理说如果它没有用。。输出的数应该是1.2.3.4.5.6.7.......这样的连续数,每个数都符合条件啊!!但是输出的数到288是正确的!!!没错,正好到样例结束的位置是正确的!!!后面就出错了!!!!输出了一堆数!!!!

比赛结束后,我们又讨论,发现方法没错,别的队A了也是打了个表,而且只有23个数。。我又看我们的代码,

后来想着以前好像这么用过但是是错的,就尝试改了一下,令l=sqrt(r);if(l*l==r)  然后就对了!!!!!简直了!!!

一开始虽然对这里也是抱有疑惑,但是因为输出的前几个数都对,就打消了疑惑,还以为自己记错了!!结果!!!以后遇到错误一定要尝试心中所有的想法!!宁可错敲,不可放过!!这个题真的很可惜,打出表来,暴力解决就好了!

周六比赛的时候手很生,敲起代码来手很难受!可能是这个周没有敲代码的原因~以后还是不能停,哪怕是水题,也要没事敲几道,练练手感~不然突然这么来一场。。。有点爽!!!!

原创粉丝点击