测试四 赛后感受

    这份题目也是有点迷。

    浏览题目的时候,看T1似乎比较简单,估计要用巧算;而T2草草地看了几眼;T3看个版面设计就不对头,莫名想到跳跃那个难题。回头果断去磨T1。

    T1是要计算在n前有多少个勾股数。由(3,4,5)特别容易让人想到数学课上老师讲的倍增关系,于是便朝着这个方面想过去。尽管这样可以很快地得出很多勾股数,却发现以一个数字开头可能会有多组的勾股数,该枚举的还是少不掉,也不能保证在某一个数就停止枚举。而前面已经用倍数关系算过的一些数,还要判断是否有算过。这种想法不仅没有减少枚举,还增加了操作的难度。

    T1研究未果,转移战场到T2。我第一眼看上去,不就是一一对应的道理吗?在草稿纸上拿样例画了个图,编了一个水代码。但直觉觉得没有那么简单,不过还是先交上去水了点分。

    T2暂且放了放,又看回T1。思考如果剩下一重for,剩下最后一重会最优。后来由最后一个点用分解法,如625分解为400和225,可是这样同样是要枚举的,最后编出来样例对了,暴力对拍一下发现越往后越少。没有保证到正确性。当场决定不调了。

    感觉T2好像不是很稳,又看回T2,在草稿纸上画了几个样例,真举出一个反例。当时内心暗自庆幸,很快又被我调了过来,但事后证明是无用功。

    比赛时间剩下一个小时左右,小心翼翼地去思考了一下T3。T3题面特别简单,只是数据范围实在是不太友善,如果把数据改小一点,分分钟是深搜基础题。感觉大概也没什么思路,打了个暴力,用最费时的方法去了一下重。想留到最后5分钟再交。

    又去看了T1和T2,还是没有什么思路。

    到了10点左右,比赛剩下10分钟。又去检查了一下T3的代码,手贱地改了一种自认为可以省时间的方法,高兴地交了上去,该死的是还过了一个点(注意是OI模式)

    最后的成绩也是让我觉得有点不科学,奇葩的是,点开之前没有改过的代码也是满分的,这样一来,比赛时的自作聪明反倒变成了画蛇添足。T2明明自己觉得有很多没有考虑过的情况,怎么特判了一下就可以AC了呢,而且还有几个大佬70分。后来我和wyy讨论了一下我的反例,发现是我自己看错了题目,根本就不存在我想的情况,然后侥幸A掉了一题。

    再看T3,全班也不知道是不是就我一个人10分,后面三个没有超时的点wr了,其他同学都是暴力得40,尴尬。我试着把第一个版本又交了一次,结果神奇的40就出现了。到现在还是百思不得其解。

posted @ 2017-08-19 15:40  yiyiyizqy  阅读(110)  评论(0编辑  收藏  举报