时间安排
7:30–7:40 读题。
7:40–8:30 T3,写了个贪心,但显然不对。对于n<=100可以网络流。对于更高档的分数可能要模拟网络流,先看其他的。
8:30–9:10 T1,简化题意,要找若干个环,要求abs(a-b)=1的边有K个,暂时不知道怎么做。先写n<=8的暴力。
9:10–11:50 T2,对于n,Q<=1000暴力模拟即可。对于没有修改操作可以预处理出前、后缀和和积,然后O1回答,细节较多。对于没有修改1,可以用线段树暴力维护,预处理出区间累和和累积,然后打懒标记替换即可。需要两个线段树,且pushup需要大量分类讨论。总共有大概60分,然后就写了总共400行,11K。对于无修改答案是对的,但是一旦有修改答案就不对了。调到最后调不出来。
反思
感觉这一场一直在莽T2
T1:难度不算太大。感觉思路主要卡在,没有注意到只要考虑每个点连向的点,限制任意两点连向的点不同就可以满足题目要求。那么对于一个i,就只用考虑i-1和i+1的情况,dp会容易很多。
T2: 很亏,码了10kb,期望拿的60pts挂成30pts。对于这种数据结构的码力和挑错能力还是要加强。另外,我没有注意到本质不同的极长累乘段最多有 n \sqrt n n个,导致没能想出较为合适直观的维护方式。
T3: 实际上这道题写完暴力就没再看了。最大流=最小割,这个trick一定要记着,对于这种形式较为简单的图,模拟最小割只需要讨论割源点还是汇点即可。
多剖析题目性质。
加强数据结构问题的码力和调错能力,减少手误和漏洞。
三思而后行,一些显然很假的做法除非没什么可写了否则就不要在上面浪费时间。
如果能用网络流,且图的形态较为简单,要考虑能否模拟网络流。对于最大流,往往可以转化为求最小割,讨论与源点和汇点的联通性,以及对于其他待讨论点的影响。