idea-first-code-later-cp
收藏数据集概述
基本信息
- 数据集名称: Idea First, Code Later: CP Benchmark
- 托管地址: https://huggingface.co/datasets/samahadhoud/idea-first-code-later-cp
- 许可证: MIT License
- 任务类别: 文本生成、问答
- 主要语言: 英语
- 规模类别: n<1K
数据集目的
本数据集是一个包含83个竞赛编程问题的精选基准,旨在独立于代码生成来评估大型语言模型在算法问题解决上的能力。数据集为论文《"Idea First, Code Later: Disentangling Problem Solving from Code Generation in Evaluating LLMs for Competitive Programming"》而创建。
数据来源与构成
数据来源于七个未托管在主要公共竞赛编程平台(如Codeforces、AtCoder)的比赛,以降低数据污染风险。具体来源如下:
- ICPC亚洲太平洋锦标赛: 2024年
- ICPC雅加达区域赛: 2017年、2018年、2019年
- 新加坡国立大学CS3233课程期中考试: 2023年、2024年、2025年
数据集组成详情
| 比赛名称 | 年份 | 来源 | 队伍数量 | 问题数量 |
|---|---|---|---|---|
| CS3233 Midterm Contest | 2023 | NUS | 25 | 11 |
| CS3233 Midterm Contest | 2024 | NUS | 15 | 12 |
| CS3233 Midterm Contest | 2025 | NUS | 16 | 11 |
| ICPC Asia Pacific Championship | 2024 | GitHub | 65 | 13 |
| ICPC Asia Jakarta Regional | 2017 | GitHub | 80 | 12 |
| ICPC Asia Jakarta Regional | 2018 | GitHub | 75 | 12 |
| ICPC Asia Jakarta Regional | 2019 | GitHub | 80 | 12 |
| 总计 | -- | -- | -- | 83 |
内容详情
每个问题包包含以下内容:
- 原始问题描述: Markdown格式。
- 黄金题解: 由出题人或测试者编写的解决方案分析。
- 完整的官方测试套件: 包含示例和隐藏测试用例。
难度分组
根据官方记分板上的解题率(成功解决问题的队伍比例),将每个比赛中的问题按解题率排序,并划分为三个比赛内相对的三分位组:
- T1: 最容易的三分之一
- T2: 中间的三分之一
- T3: 最难的三分之一
数据结构
每个数据示例包含以下字段:
标识符
problem_id: 唯一标识符problem_code: 问题代码(A, B, C...)problem_slug: URL友好的问题名称problem_title: 完整的问题标题
比赛信息
contest_name: 比赛标识符contest_full_name: 完整比赛名称year: 比赛年份source: 来源URL/仓库total_teams: 比赛总队伍数total_problems: 比赛总问题数
问题详情
statement: Markdown格式的问题描述analysis: 题解/解决方案分析time_limit: 解决方案时间限制memory_limit: 内存限制author: 问题作者analysis_author: 题解作者
测试用例
sample_test_cases_input: 示例输入列表sample_test_cases_output: 示例输出列表hidden_test_cases_input: 隐藏输入列表hidden_test_cases_output: 隐藏输出列表has_special_judge: 布尔值,表示问题是否接受多个正确答案special_judge_code: 用于验证输出的C++评分器代码special_judge_format: 评分器格式("standard" 或 "jakarta2017")uses_kattis: 布尔值,CS3233问题为Truekattis_problem_id: 用于提交的Kattis问题IDcontest_standings_csv: 完整的比赛记分板CSVscoreboard_url: 比赛记分板原始URL
比赛统计
teams_solved: 成功解题的队伍数teams_wrong_answer: 答案错误的队伍数teams_unattempted: 未尝试的队伍数teams_tried: 尝试过的队伍数solve_percentage: 解题百分比first_solve_time: 首次解题时间(分钟)average_solve_time: 平均解题时间(分钟)total_attempts: 总提交尝试次数average_attempts: 每队平均尝试次数Difficulty_Tertile: 比赛内的难度三分位排名
使用说明
加载数据集
python from datasets import load_dataset dataset = load_dataset("samahadhoud/idea-first-code-later-cp")
测试运行器
数据集提供了测试运行器(hf_test_runner)用于评估解决方案,可自动处理:
- 示例和隐藏测试用例
- 特殊评分器(针对有多个有效答案的问题)
- Kattis提交(针对CS3233问题)
- 内存和时间限制
版权与许可
- CS3233部分: 包含新加坡国立大学课程评估材料。已获得课程讲师的版权许可,允许在数据集中包含并重新分发这些材料(问题描述、黄金题解)。CS3233的黄金题解是此前未公开的私有课程材料。
- 数据集整体采用MIT许可证。
引用
若在研究中使用本数据集,请引用以下论文: bibtex @misc{hadhoud2026ideafirstcodelater, title={Idea First, Code Later: Disentangling Problem Solving from Code Generation in Evaluating LLMs for Competitive Programming}, author={Sama Hadhoud and Alaa Elsetohy and Frederikus Hudi and Jan Christian Blaise Cruz and Steven Halim and Alham Fikri Aji}, year={2026}, eprint={2601.11332}, archivePrefix={arXiv}, primaryClass={cs.CL}, url={https://arxiv.org/abs/2601.11332} }




