使用手册
装好之后该点哪里
九个章节,从第一次打开软件到把数据交上去。左侧可以直接跳转。
Windows x64
独立 exe
PHP 版官网 · 与软件版本 8.0.0 同步
01快速上手
从下载到拿到第一组测试数据,正常不超过五分钟。
- 下载安装包(约 123 MB)并安装,或者直接运行主程序 —— 都是独立 exe,不需要另外装运行时。
- 选模式:第一次建议先用「随机生成」跑通流程,确认输出目录、编号规则都符合你的预期。
- 填参数:数据类型、值域或长度、每个文件里放几个元素、起始与结束编号。
- 点生成,再切到「打包 ZIP」把生成的
.in/.out打成压缩包,直接上传评测平台。
02几种造数据方式怎么选
按「数据里有没有结构」来分:随便造用随机模式,要造树图几何就写生成器,要答案就跑自编译。
| 模式 | 什么时候用它 | 产出 |
|---|---|---|
| 随机生成 | 只要测试输入、答案由评测机自己算(例如对拍、压力测试) | 1.in ~ N.in |
| 生成器代码 | 数据带结构:树、图、几何,或必须有强约束的边界数据 | 1.in ~ N.in |
| 自编译 | 需要精确的答案文件,或者答案本身不好手推 | 1.out ~ N.out |
| 打包 ZIP | 数据已经生成好了,要打成能上传的压缩包 | 一个 .zip |
| 实用工具 | 顺手用一下计算器、二维码、IP 查询之类的功能 | — |
03生成器代码与自编译
两种写代码的用法:生成器负责造输入,自编译负责算答案。
生成器模式:程序只出题
在界面里直接写 C++ 生成器,点一下完成「编译 → 对每个数据点运行一次 → 把标准输出存成 .in」。程序不需要知道任何路径,只管往标准输出写。
#include <cdcscq.hpp>
using namespace cdcscq;
int main() {
seed(); // 播种
int n = 10 * case_id(); // 第 1 个点 n=10,第 2 个点 n=20 …
out_vec(seq(n, 1, 1000000000));
out_tree(n, tree(n, "random"));
return 0;
}自编译模式:程序要答题
把一份 AC 代码交给 CDC,它会对每个 .in 各运行一次:标准输入接 .in,标准输出写成 .out。
#include <iostream>
using namespace std;
int main() {
int n; cin >> n;
for (int i = 1; i <= n; i++) {
long long x; cin >> x;
cout << x * x << endl; // 输出答案
}
return 0;
}三条要注意的
- 程序不要读写文件,只用标准输入输出 —— CDC 是靠文件句柄接管这两个流的。
- 数据规模先写小一点跑通,确认内容对了再放大;一次编译失败,后面的数据点一个都不会生成。
- 生成器里用随机数就调
seed();需要复现同一个数据点可以用seed_case()按编号固定种子。
04配置 g++
找不到编译器时,自编译模式会直接失败。先把它指对。
软件按下面的顺序找一个能用的 g++,找到就用,并记住位置:
- 上次记住的路径 —— 你选过一次之后,下次直接用它,这是最快的一条路。
- 程序所在目录及它的
mingw64\bin—— 便携整合包自带的那一份就在这儿。 - 系统 PATH —— 环境变量里能找到的 g++。
- 常见安装路径 —— 几个典型的 MinGW-w64 安装位置。
如果自动没找到,在软件里手动选定 g++.exe 的路径即可。手动选定后会写入配置,下次启动自动加载,不用每次重选。
05账号与激活码
本地功能不需要账号。账号只关系到云端相关的几项能力。
- 账号可以绑定设备,用于识别「这台机器已经登录过」。
- 一个激活码最多绑定 3 台设备。 超过之后再激活会被拒绝,需要换码或解绑。
- 激活码可以增加内置 AI 助手的可用次数。
- 没有账号,随机生成、自编译、打包、实用工具这四块全部照常可用。
06内置 AI 助手
写生成器、读报错、查语法,界面里直接问。两种接法二选一。
| 模式 | 怎么用 | 适合 |
|---|---|---|
| 账号配额 | 不用配置,直接提问,消耗账号里的 AI 次数 | 偶尔问一问 |
| 自备 Key | 在设置里填自己的接口地址与 Key,不走配额 | 经常用,或者要接自己的模型 |
回答按 Markdown 排版,标题、列表、表格、代码块都正常显示,行内与独立公式用 LaTeX 写。排版所需的东西都打包在程序里,断网也照常显示,不会因为某个外部站点连不上而变成一片空白。
07自动更新
发布即可用,老版本也能收到。
更新走双通道:主通道读服务器上的版本接口,发布后立刻生效;同时服务器会自动导出一份静态清单作为兜底,所以即使接口暂时不可用,老客户端一样能查到新版本。
- 检查到新版本后会提示,确认后自动下载安装包并拉起安装程序。
- 更新包会校验是不是真正的安装程序,防止把网页内容当成 exe 存下来。
- 不想被自动更新打扰,可以不点「检查更新」,不影响任何本地功能。
08常见问题
下面这些是问得最多的。
作者 starryfast 独立开发的 C++ 图形化数据生成器,用来给在线评测平台的题目造测试数据。它既是随机数据生成器,也是一套能把 AC 代码直接跑成测试点的工具链。
Windows 即可,主程序是独立 exe、不用装运行时。自编译模式需要 g++:安装包自带一个(仅 C++11),也可以在软件里手动指定系统已装的 g++,选定后会自动保存。
它的思路是「用正确的程序造数据」:CDC 先把你的 AC 代码编译成可执行文件,再对每个数据点运行一次,把标准输出捕获成对应的 .out。这样强数据和边界数据都能精确构造,也不用人工推答案。
CDCSCQ 是 CDC 内置的数据生成函数库,命名致敬 CYaRon,但为独立实现:C++23 单头文件、零外部依赖、90 多个接口,专为生成器模式设计,编译时自动挂载包含路径。
可以,而且是默认行为。CDC 调用 g++ 时会固定带上 -std=c++23,内置的 CDCSCQ 本身就是C++23 单头文件库,生成器里可以直接使用 C++23 的语法与标准库设施。唯一的限制是编译器本身:安装包自带的那个 g++ 只支持 C++11,想用 C++23 需要在软件里把编译器换成较新的 MinGW-w64。
界面整体重制,并新增六块内容:① <b>对拍差分测试</b>——两份 C++ 一起编译、逐测试点喂 stdin、归一化后逐行比对,直接告诉你第几个测试点在第几行开始不一样;测试数据不再只认 zip,文件夹(含 test/、cases/ 嵌套)、7z、rar、单个 .in 都行;② <b>C++ 在线运行器</b>——弹窗编辑器带语法高亮与行号栏,选标准直接编译运行看输出;③ <b>正则工场</b>——三个开关组合、命中实时高亮、表达式解释与替换预览;④ <b>安全凭据生成器</b>——字符集与长度可调、可排除易混字符、一键复制;⑤ <b>进制与时间戳转换器</b>——2/8/10/16 进制互转,Unix 时间戳双向换算;外加 <b>数据可视化</b>(分布直方与趋势图)与 <b>操作历史记录</b>(可展开回看、可清空)。幻想增强引擎(20 项本机校验与分析)保持不变,安装包也换成自带完整 MinGW64 工具链的 Inno Setup 版本。
不需要。幻想增强引擎完全在本机运行,所有计算都不联网、不上传、不留痕,离线也能用。对拍、在线运行器、正则工场、凭据与进制转换同样全部本地运行。
对拍在侧栏「⚔ 对拍」页:两份代码各粘一份,下面选测试数据(文件夹 / zip / 7z / rar / 单个 .in),点开始即可看到通过数、不一致数与首个差异行的双份输出对照。测速下载是站点侧的:点下载时由服务器真实下载每个加速节点的前 64 KB 测出吞吐,再跳最快的那个;接口 8 秒内没结果就直接走 GitHub 直连,不会让你干等。下载页还提供「节点测速」面板,可手动挑节点。
把能力从桌面延伸到了网页与云端:内置网页后端(默认 127.0.0.1:18889,内嵌完整前端)、生成器代码模式(在界面里写 C++ 直接产出 .in)、CDCSCQ 函数库、AI 助手、账号与激活码体系、双通道自动更新;设置也从注册表迁移到了本机数据库。详见技术内幕页。
免费。源码已在 GitHub 与 GitCode 公开。开发与维护由作者 starryfast 独立完成,参与测试的只有下面列出的几位,市面上若出现自称官方的「增强版 / 破解版」,请注意辨别。
目前招募 bug 检测与宣传。联系作者 QQ 272215275 或邮箱 272215275@qq.com,也可以加入 GitCode 组织「Code date creation编写」一起参与。
09遇到问题怎么办
带上现象和截图,会快很多。
- QQ:272215275(作者 starryfast)
- 邮箱:272215275@qq.com
- GitCode:在代码仓提交 Issue 反馈
- ACGO:发布帖下留言