如何A掉《未来程序·改》(上):编译器前端和解释器

长夜过,最难熬的破晓一定会赴约刚好。 最向往的时光,是一如既往,就好。

自从我打 OI 以来,【集训队互测 2015】未来程序·改 就是我的梦中情题。它需要实现一个 C++ 子集的解释器。当年我的知识水平还远远不足以 A 掉它,只能望题兴叹。 继续阅读 »

非旋转 Treap 模板

题目传送门: 洛谷 P3369LibreOJ #104BZOJ 3224

我们需要实现一种数据结构,实现以下操作。 1. 插入 $ x $ 数; 2. 删除 $ x $ 数(若有多个相同的数,因只删除一个); 3. 查询 $ x $ 数的排名(若有多个相同的数,因输出最小的排名); 4. 查询排名为 $ x $ 的数; 5. 求 $ x $ 的前趋(前趋定义为小于 $ x $,且最大的数); 6. 求 $ x $ 的后继(后继定义为大于 $ x $,且最小的数)。 继续阅读 »

SYZOJ2 在 CentOS 上的搭建

SYZOJ2 官方只提供了 Ubuntu 的教程,在 CentOS 上,有些东西会不一样。 本文需要对照官方安装指南查看,详情请阅读 syzoj/syzoj on GitHubDemo 服务器账号及搭建指南 – 帖子 – Demo。 这里还有一篇很详细的 SYZOJ 部署指南,是 Masellum 写的。值得参考。

SYZOJ-Web

Web 的搭建相对比较简单。大部分都可以按照 SYZOJ2 官方的教程来做。 这里只说明不一样的地方。 对于在 Ubuntu 下的这段命令: 继续阅读 »

lemon 在 macOS 上的移植

lemon 是一个轻量的 OI 评测系统。它基于 Qt 编写,因此应当具有强大的跨平台特性。 但是 2012 年开始,lemon 就不再更新了。而且之前官方也没有管 macOS 的问题,直接 qmake 也是不可能通过。 所以,我去做了一个移植的工作。 这里就直接贴项目地址了(其实就是骗 Star): lemon-mac 在 GitHub 上的内容

如果你实在懒得折腾,也可以下载我构建好的版本,既可以去 GitHub Release 下,也可以点击这里下载。 lemon 界面 放张图就跑~ 另外,最近中国移动网络似乎会将 GitHub 解析到 127.0.0.1。访问不了 GitHub 的朋友们就去 Coding.net 吧。