现在的位置: 首页 > 综合 > 正文

SRM 444

2019年04月14日 ⁄ 综合 ⁄ 共 3110字 ⁄ 字号 评论关闭

很长时间没有在tc上做比赛,还是老老实实从D2区开始吧!

 

我们这个房间很有意思,最后分数排名前三的家伙在最简单的250分上都卡了一小会——其中就包括我。也许是因为久疏战阵,缺乏对模拟题的手感吧。

 

第二题求乘积的层次,实际上就是求质因数的个数。我居然先打了一张四百万的质数表……

 

这题到最后只有两个人过。进入challenge环节之后,当排名前列的几位在代码间寻寻觅觅,苦心竭力欲求一Ch而不得的时候,一个灰颜色的、只靠250p拿了160分的选手在谈笑风生间连续干掉了四个人,让我们看得目瞪口呆……

 

第三题太长了!我敲到一半才发现,五分钟之后就要被迫关掉代码了。【其实是你土鳖啦】

 

确实是方法土鳖了。

 

当需要四个方向旋转求解时,只需要把原图旋转四个方向,然后按一个方向写判断函数即可。

 

 

明天再做D1的题。

 

============从代码中挣扎着爬出来的分割线============

 

OK,250p和500p都顺利【?】过掉。虽然时间用的有点长,几乎是ACRush同学的十倍,不过我相信在有生之年应该可以把这个数字减到两到三倍。总之还是需要多加练习。

 

250p  UnfoldingTriangles

 

模拟题。贪心,不断展开fold、减去剩余的unfoldlimit就可以了。码的第一次还求了个最长能够得到的三角形边长,结果FST。其实在循环里判断一下就可以了。

 

500p  FourBlocks

 

DP位操作。

 

这个题目不错,比赛中过的人也比较多。我觉得我写的比ACRush清楚【喂,别臭美】,但他的代码比我少一些。而且用十分钟写完代码,对于我来说实在是不可能的任务。嗯,我起码用了两个钟头了吧……

 

和zoj1100相类似。我用一个钟头看懂了一年半前自己写的代码,果断跨领域移植,终于取得了重大突破。

 

首先将原图转90度摆放,从上到下分层。每一层最多10个数,即1<<10 = 1024种状态。在从第n层推导第n+1层的时候,可以预先作出状态转移。

 

一共有三种转移模式:当2*2方块中无1,上层和下层同时填充2个;上层填一个,下层填一个;上层填一个,下层不填。因为转移之后上层必须为满,所以后两种情况上层也必须填充。

 

 

 

 

 

 

 

【上篇】
【下篇】

抱歉!评论已关闭.