当前位置: 首页 > news >正文

Tuack 生成 OI 比赛题目 PDF 笔记

Part 1. Tuack 的基本介绍

Tuack,是一个由来自 THU 的大佬 Mulab11 开发的,用于造算法竞赛题目的工具。

你可以用它:

  • 导出 PDF、Markdown、HTML 等多种不同格式,NOI、CPC 等不同风格的题面。
  • 简单的出题人自评测功能,用于对比不同出题人、验题人程序的得分情况。
  • 导出 LemonLime、Arbiter 等多种不同评测平台的评测包。
  • 导入测试数据。
  • 导入 docx、Markdown 等多种不同格式的题面,并进行简单的样例提取、表格提取等。
  • 简单的题面格式检查,例如部分标点符号用法、公式用法等。
  • 题面书写辅助工具,例如数据参数引用、整数公式化输出、外部文件引用等。
  • 完成有关出题的其它东西

Part 2. 安装 Tuack

因为 Tuack 基于 Python 3,所以你需要事先安装 Python

方法1:pip

如果你安装了 Python 的包管理器 pip,你可以直接使用 pip 安装 Tuack 的最新稳定版

pip install tuack

如果你没有安装 pip,可以使用下列方式安装:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

方法2:setup.py+pip

如果你需要安装正在开发的版本,或某些原因无法使用 pip,可以使用这样的方法:

先在本地 git clone Tuack 原工程,或下载并解压工程。然后在本工程的主目录下运行下列命令(其中 ??? 是版本号)

python setup.py sdist
pip install dist/tuack-???.tar.gz

方法3:setup.py

在本地 git clone Tuack 原工程,或下载并解压工程。然后运行

python setup.py install

这个方法不会自动安装依赖,因此不推荐。如果你长期使用 Tuack,并且要快速切换成最新的开发版本时可以使用这个方法。在具体的使用中你需要手动安装报错的库。

为了正常使用 Tuack,你可能需要手动安装如下应用:

  • pandoc,这个工具可以转换不同的文本格式,用于输出题面。
  • \(\LaTeX\) 相关工具(如:XeLaTeX,MikTeX 等)只用于导出 pdf 格式的题面,且巨大无比,因此不预装。

使用方法

Step 1

明显地,你需要先新建一个文件夹专门用于你的比赛。

Step 2

打开 cmd,将操作路径改为你的比赛的路径,方法为 cd <DIR><DIR> 在这里代之你的比赛文件夹的路径。

Step 3

使用 python –m tuack.gen contest 命令创建比赛

Step 4

使用 python –m tuack.gen day day0 [day1]...[dayn] 命令创建比赛日([xxx] 指你可以额外输入 xxx 的参数,但也可以不用。这里指你可以选择创建这个比赛日,也可以不用)

Step 5

进入比赛日的文件夹,方法同 Step 2,<DIR> 在这里应该是 dayX,其中 X 是一个整数

Step 6

使用 python –m tuack.gen problem A [B] [C]... 命令创建若干个分别名为 A,B,C... 的题目,其中的名字不一定要是 A B C 这些字符,但似乎(?我没测过)要用英文名

Step 7

进入题目的文件夹

Step 8

编辑 statement 文件夹下的 zh-cn.md 以修改中文题面,如果你要多语言则在 statement 文件夹下创建 en.md 表示英语题面等。可以适当看一下它的 zh-cn.md 里的内容,Tuack 有些东西的渲染方式和一般的 \(\mathrm{Markdown}\) 不一样。

放样例放在 down 文件夹,放表格放在 tables 文件夹,其它的可以参考自动生成时的 zh-cn.md

Step 9

回到你的比赛总文件夹,然后使用 python –m tuack.ren noi –o Linux 指令渲染题面,如果不是生成 CCF 风格的题面,可以把 noi 换成 tuoitupcccpcccc-textuojccc-mdlojuojtsinsen-ojthuoj 之类的风格,具体可以看 官方 Wiki。对于 -o 后的操作系统,可以换成 LinuxWindowsDarwin(MacOS)的其中之一

小记

本人也只是刚开始用 Tuack,如有误或者有待补充的地方,欢迎在评论区告知我。

http://www.hn-smt.com/news/350/

相关文章:

  • 数据库三大范式、Union和Union all的区别
  • CSP-S2025 游记
  • 「LG3600-随机数生成器」题解
  • MathType7下载包安装教程2025最新下载+安装+汉化激活(附安装包,超详细)
  • 2025强网杯ezphp复现
  • 漏洞报告被拒绝的常见原因及避免方法
  • 【IEEE出版 | 重庆邮电大学主办 | 多届次、高层次】第六届人工智能与计算机工程国际学术会议(ICAICE 2025)
  • Docker容器里面部署的Jenkins的Java17升级到21版本(无需删除之前容器,内部在线升级) - 攻城狮
  • 报表知识
  • 渐进过程中大O与小o混用
  • 消息队列的有序性
  • 【LTDC】DMA2D —— 嵌入式系统的 GPU
  • unity管理器设计:Manager of Managers
  • iview table 排序 columns 里面写 sortable: custom 不要写 sortable: true 不然会进行二次内部排序序号等 字段。
  • 本地运行nginx服务,模拟线上环境访问项目
  • git提交远程项目步骤
  • 2025 年搅拌器搅拌设备,侧入式搅拌设备,斜插式揽拌设备,卧式搅拌设备厂家最新推荐,聚焦资质、案例、售后的五家企业深度解读
  • 2025 年环保搅拌设备,搅拌装置设备,框式搅拌设备厂家最新推荐,实力品牌深度解析采购无忧之选!
  • CorelDRAW的shell扩展ShellXP.dll导致资源管理器explorer.exe卡死/冻结/无响应/挂起
  • 2025 年定制矿车,大型矿车,固定式矿车厂家最新推荐,产能、专利、环保三维数据透视
  • 醒图电脑版下载与安装教程(2025最新版)
  • 2025 年江苏电缆附件,热缩电缆附件,冷缩电缆附件,预制电缆附件厂家最新推荐,产能、专利、环保三维数据透视
  • Android Studio 使用glibc2.28的版本
  • 2025年10月兰花油品牌推荐榜:五款精华油深度对比与选购指南
  • 2025年浅拾兰花双萃致臻精华油:从成分与技术维度解析其护肤功效
  • 2025 年进口螺杆泵,萨伯特螺杆泵,污泥螺杆泵厂家最新推荐,实力品牌深度解析采购无忧之选!
  • 为什么 AI 模型的最小理解单位是「特征」?
  • 2025年移动车载变电站厂家最新推荐榜:陕西四方华能凭硬实力成优选
  • XiaoQuQu 的 2025 CSP-S 第二轮模拟 ROUND2
  • 2025年硬密封闸阀厂家权威推荐榜单:手动闸阀/明杆闸阀/法兰闸阀源头厂家精选