日记

日记

Sat Nov 30 2024
2 分钟

今天是他们考 NOIp 的日子,可惜我S组没考好,去不了。

上午#

做dp。

CF2000F Color Rows and Columns#

是个背包。设 dpi,jdp_{i,j} 表示循环到第 ii 个矩形已经填满的行和列加起来有 jj 个,代价是多少。那么有转移方程:dpi+1,j+k=max(dpi+1,j+k,dpi,j+cost)dp_{i + 1,j + k} = max(dp_{i + 1,j + k},dp_{i,j} + cost) 。其中 costcost 表示填到现在已经花了多少代价。然后就做完了,时间复杂度 O(n2k)O(n^2k)
其实我都想到了,但是没看数据范围,以为过不了,然后就去看了题解。可惜啊。

CF2005C Lazy Narek#

dpidp_i 表示字符串长度为 ii 的时候的答案。循环每一个字符串中的每一个字符,如果这个字符不是 narek 里的字符,就 continue 。然后,如果下一个字符是 narek 里的下一个字符,那么 score ++ 。否则 score -- 。看的是 codeforces 的官方题解,不懂去看就对了。

上午还写了一道橙题和一道紫题,也是十分可以。

下午#

NOIp 真题。也是根本做不出来。

T1:以为是一个模拟:因为如果两段区间内有一个 00 ,那么这两段区间肯定是相互独立的,他们的 0011 的数量肯定是不会变的。然后就可以开始模拟了。然而打了一半的代码,忽然发现做法假了。这道题好像是dp。话说我练了这么久的dp也是一点没有长进啊,一定是tj看多了。

T2&T3&T4:没看,没时间了。

总结:还得多练。

今天总共才切了 44 道题,还有一道是水题。也是十分颓废。

话说我明年真的能拿 NOIp 一等奖吗