【比赛游记】FJOI2022 划水记

Day -?

得知 FJOI 王者归来。

Day 0

试机从 15 : 30 至 16 : 30。发现考场键盘是巧克力键盘,鼠标 DPI 目测 800。难受。

写了 LCT,SAM,SA,圆方树。试了几组小样例,还可以。SAM 和 SA 拍上了。NTT 写到一半试机就结束了。

试机结束后和同学们去逛了逛师大附中旁边的烟台山公园。很快就迷路了,还好有人带路。

烟台山夜景:

高情商:王家卫式抽帧;
低情商:乐色对焦。

吃完饭,回到酒店,处理了一些琐事后开始颓废。

《LOL》开了两把大乱斗全输(还好不是排位,不然今晚别睡了)。遂转战《分手厨房》,想起我没有分手的先决条件,呜呜呜。

21 : 40,出去买了碗烧仙草。福州十字路口的客流量好大。可能是人在小县城,没见过什么大场面吧。

22 : 20,复习了一些算法,检索了这半年来做过的一些题目。给自己打了预防针:今年攒经验,明年冲省队。

祝大家 FJOI2022 Day1 RP++!

Day 1

「FJOI2022 D1T1」区间子集问题:

给出 \(n\) 个区间 \([L_i, R_i]\),保证共 \(2n\) 个区间端点互不相同,且对于任意两个区间要么包含、要么无交。

对于每个区间 \([L_i, R_i]\),你都需要选出它的一个子区间 \([l_i, r_i]\),满足 \(L_i \leq l_i < r_i \leq R_i\),且任意两个子区间最多只有一个交点。你需要最大化 \(\sum(r_i - l_i)\) 的值。

数据范围:\(1 \leq n \leq 2000\)\(L_i, R_i\) 没给(FJOI 特色)。
时空限制:\(3000 \ \mathrm{ms} / 512 \ \mathrm{MiB}\)

原题:CF 1510H

「FJOI2022 D1T2」最大平方数问题:

给出四个整数 \(a, b, c, n\),定义二次函数 \(f(x) = ax^2 + bx + c\),求 \(\prod_{i = 1}^n f(i)\) 的最大平方因子。对 \(998244353\) 取模。

数据范围:\(1 \leq a, n \leq 2 \times 10^5\)\(0 \leq b, c \leq 2 \times 10^5\)
时空限制:\(3000 \ \mathrm{ms} / 512 \ \mathrm{MiB}\)

原题:gym102896 F

「FJOI2022 D1T3」滚动雪人游戏问题:

给出一个长度为 \(n\) 的字符串,仅包含字符 ABC

每次操作,可以任意抽取两个不同的字符,将其替换成没出现过的那个字符后放回。直到场上只剩下一种字符后停止操作。

在保证操作次数最少的前提下,求剩下的字符是哪个,若不唯一输出 N

数据范围:\(1 \leq n \leq 10^4\)
时空限制:\(1000 \ \mathrm{ms} / 512 \ \mathrm{MiB}\)

开场把三题题意简单看了一遍。发现 T1, T3 好像可做,T2 不太行。

8 : 40 ~ 9 : 30,思考 T1 向上合并时,要保留哪些有用的状态。

发现不能死磕 T1,就先 10min 把 T2 的 \(\mathcal{O}(n^3)\) 暴力写了。

9 : 50 ~ 11 : 00,思考 T3 要怎么构造。上次在比赛中碰到构造题还是「NOIP2020 T3」移球游戏,痛苦的回忆。

考场思路比较复杂,先是发现场上至少有两种不同字符的情况下,两个相同字符可以通过辅助字符两步消掉。随后考察仅包含两种字符时的情况,分奇偶性大力讨论了四种情况。然后针对包含三种字符时的情况,可以先将某个颜色消掉,转化成两种颜色的情况。在所有情况中取最少步数的即可。写完且验证之后恰好 11 : 00。

接下来的时间里都在全力冲 T1,没有成效。

正式成绩:\(0 + 0 + 90 = 90\)。没想到 T3 还被卡了一个点。

Day 2

「FJOI2022 D2T1」重复函数问题:

给出一个长度为 \(n\) 的字符串 \(S\),字符串 \(S\) 仅包含小写字符。

定义重复函数 \(f_S(i)\) 表示:\(S\) 的最长子串 \(A\) 的长度,使得 \(S\) 可以被表示为 \(A \# A \# ... \# A \# A\) 的形式(\(\#\) 可以为任意串,包括空串,不要求每个 \(\#\) 都相同),且 \(A\) 在该表示中出现了 \(i\) 次。

对所有 \(2 \leq i \leq n\),求 \(f_S(i)\) 的值。

数据规模:\(1 \leq n \leq 10^6\)
时空限制:\(1000 \ \mathrm{ms} / 512 \ \mathrm{MiB}\)

「FJOI2022 D2T2」6G 网络问题:

给出一个正整数 \(n\),对于一个 \(n \times n\) 的网格图,每一个格点都可以选择是否涂色。求最多的涂色格点数,使得对于任意 \(4\) 个涂色点,不能组成平行于网格图边缘的矩形。

数据规模:\(1 \leq n \leq 10^9\)
时空限制:\(1000 \ \mathrm{ms} / 512 \ \mathrm{MiB}\)

OEIS:A072567

「FJOI2022 D2T3」赛场监控问题:

首先,给出一个方向集合 \(S\),该集合为 右上、右下、左下、左上 四个方向组成的集合的非空子集之一。

给出三个正整数 \(n, r, c\),一个矩形区域被 \(r\) 条横线与 \(c\) 条竖线划分成 \((r + 1) \times (c + 1)\) 个格点。

给出 \(n\) 个监控,第 \(i\) 个监控的坐标为 \((x_i, y_i)\)。每个监控都可以在方向集合 \(S\) 中选择一个方向监视,该监控可以覆盖从监控坐标开始向监控方向扩展的一个极大矩形区域。

确定所有监控的监视方向,使得被监视到的格点数最大化。

数据规模:\(1 \leq \sum n \leq 10^5\)\(0 \leq x_i \leq r \leq 10^9\)\(0 \leq y_i \leq c \leq 10^9\)
时空限制:\(1000 \ \mathrm{ms} / 512 \ \mathrm{MiB}\)

开场把三题题意简单看了一遍。发现 T1 很可做,T2 好像有戏,T3 看样子很克我。

8 : 40 ~ 9 : 00,研究了一个贪心 + 整体二分的做法,因为出现次数为 \(i\) 的不重叠串,长度不超过 \(\left\lfloor \frac{n}{i} \right\rfloor\),并且 \(f_S(i)\) 函数是不升的。这意味着有效的答案是很稀疏的,于是可以将所有的询问放在一起二分。

该做法在数据随机时表现十分良好,卡该做法的关键是要让 \(f_S(i)\) 的值取满 \(\mathcal{O}(\sqrt{n})\) 种。造了一组 aaa...bbb...aaa 的数据,时间稳定在 \(800 \ \mathrm{ms}\) 左右,很悬。

9 : 00 ~ 9 : 40,研究了一下正经的做法,发现可以直接在 SAM 上贪心。很快写完,与上述做法拍上了。

9 : 40 ~ 10 : 30,思考 T3,\(|S| = 1\) 可以直接扫描线,\(|S| = 4\) 可以直接分类讨论,\(|S| = 2, 3\) 就没仔细想下去了。考场降智比较严重,没有意识到多测是先给一个固定的方向集合 \(S\),再给出所有数据。导致我没有骗 T3 分的任何信仰。

接下来的时间里都在全力冲 T2,没有成效。

正式成绩:\(100 + 0 + 0 = 100\)

吐槽

FJOI 的性质是一场选拔赛,是要选拔省队选手的,质量尤为关键。

几乎没有部分分(唯一有部分分的是 D2T1)。每道题的得分 \(0\)\(100\),就像二极管。剩下的分全靠猜与信仰。

题目描述也没有很好的阐述题目本身想表达的意思。我在考场上的时候还对 D1T1 的那句 " 由此可知 " 反复看了好久,最终才确定这是它题目本身就保证的性质。

而且,赛后得知 D2T2 是一道假题(Open Problem),目前学术界只能解决一些特殊情况。

而且,据说输出 \(3(n - 1)\)\(n(n - 1) / 2\) 就可以过,什么乐色数据?这不是比谁的信仰更强吗?凭什么别人写个不到 \(0.1 \ \mathrm{k}\) 的代码可以过?对于像我这样超过半场都在梭哈这题的却没分的选手,是否公平呢?

而且,D1T1 与 D1T2 是 Codeforces 原题,出一点冷门原题可以理解,一是不能对 FZU 的选手太苛刻,二是好的题目可以保证省选的质量。

  • 那是否可以解释一下为何 Codeforces 上一位叫 water235 的用户(可推测得知该用户为泉州七中的教练)在 2022.4.11 确定福建独自命题后,通过了这两道原题,交的还是 tourist 的代码呢?
  • 那是否可以解释一下为何在大部分选手发挥不理想的情况下,泉州七中全体选手通过 D1T1 与 D1T2,冲进 A 队队线呢?
  • 那是否可以解释一下为何 FJ-021 与 FJ-055 逻辑几乎相同?
  • 那是否可以解释一下为何 FJ-055 会写下这样一句注释?这么说这位选手还写过很多回咯?
//这回只花了45min就打完了。
  • 那是否可以回答一下,对于上述问题,除了泄题还有什么其他的可能性吗?

没想到第一次考 FJOI 就遇到狠的。

之前听别人骂 FJOI,我觉得要理性一点,保持自己的判断。现在觉得 " 未经他人苦,莫劝他人善 " 说的真对。

关于我

纵观 2021 ~ 2022 学年,被「CSP2021-S T2」、「NOIP2021 T2」、「FJOI2022 D1T1」三道 dp 区分了。说真的,如果这三道题中的后两道切掉了,多骗点分,进队绰绰有余。

这其实也反映了我在集训方面的严重缺陷:对 dp 的针对训练很有限,大部分时间都在研究数据结构、字符串、数学等方面的内容。

接下来的一年里,好好沉淀一下,提升一下自己的 OI 水平和文化课水平。

明年是 OI 生涯的最后一条命,希望可以拿得起、放的下。

不过 CLYZ 今年还是出了两位队爷,分别是 lzx2005 与 kekeke。可喜可贺,预祝他们在 NOI2022 的赛场上大放光彩,重铸 CLOI 荣光。

posted @ 2022-05-02 22:45  Calculatelove  阅读(1210)  评论(3编辑  收藏  举报