0%

The 2014 ACMICPC Asia Invitational Xian

上半年邀请赛的时候真是险而又险地2题拿了个铜,确实其实跟没拿一样……现场前复盘一下,长长记性

【A】签到题

【B】最短路+DFS

【C】最短路

【D】构造+欧拉回路

【E】数论,最佳平方逼近

【F】望而却步…

【G】望而却步…

【H】望而却步…

【I】

【J】最短路+TSP


A

看到的第一眼考虑KMP,最后才知道原来签到题直接模拟即可。

B

第一步完成点对点之间的最短路这点肯定没有问题,后悔当时没有尝试直接暴搜……

启发

还是能做的一定努力出一下,暴搜也得试!!!!

C

主要是读懂题意,读完之后就是一道简单的最短路题了

D

分析

当时没有想过详细计算一下最大可能的长度,最终的构造方案也都是非常直观的。

相同的长度不能超过4,则4位的最大可能性是26^4种,即以串中的每一个字母都可以作为起点,一共可以有26^4个起点,加上最后的3位长度一共是26^4+3,超过这个长度的就不可能构造出来了。

一个简单的构造方案:aaaabbbbcccc……zzzz 排完,然后用一个flag[26][26][26][26]就足够存储标记了,不断枚举下一位,只要判断它跟前面末三位加起来是不是已经被标记过就可以决定是不是可以摆放。

或者使用欧拉回路的构造想法。

启发

构造题预计肯定会出!!!!构造的时候千万不能盲目啊!!!!先用数学的方式尽可能地把能够计算的东西都算一下,比如说理论上的最大长度什么的,算完以后基本上很大程度上就能够看出来到底应该怎么构造了!!!!