道高一尺 or 魔高一丈:浅谈交互库编写

有些时候,为了实现特殊的需求,我们可能需要编写交互库,要求选手链接。

常见的情景有:

  • 强制在线:一些题目不强制在线可能会被“乱搞”通过。例如可持久化数据结构有众所周知的离线做法。
  • 加速输入输出:一些题目为了要求严格线性可能需要 $10^8$ 以上的输入量,如此大的数据必须在内存生成并交换。
  • 限制操作:一些思维题不允许选手直接读取数据,而是要求选手做特定询问获取详细内容;或者可能限制操作次数。
  • 人机对抗:另一些思维题要求选手找到最优策略,那么可以要求选手通过接口与交互库对抗。

既然交互库要链接选手的程序,就必须做好防范措施,避免选手使用不当操作 $\textcolor{green}{\text{AC}}$。

Read full post gblog_arrow_right