题目难度体系
此文档为临时难度定义
注意:这是临时的难度定义,部分试题的难度,以及各档难度的定义可能会在之后有调整。
无论是编程初学者还是具备一定基础的选手,选择合适的题目都是提升算法能力的关键。为此,洛谷建立了一套题目难度分级体系,帮助用户根据自身水平精准筛选训练题目,实现高效进阶。
洛谷的难度由易到难共划分为以下档次,并配有对应的标识颜色:
| 名称 | 颜色 | 国际站名称 |
|---|---|---|
| 入门 | 红色 | Red |
| 普及- | 橙色 | Orange |
| 普及 | 黄色 | Yellow |
| 普及+/提高- | 绿色 | Green |
| 提高 | 青色 | Cyan |
| 提高+/省选- | 蓝色 | Blue |
| 省选/NOI- | 紫色 | Purple |
| NOI/NOI+/CTS | 黑色 | Black |
难度评定由题目出题人、管理员及高水平用户共同完成,难免带有一定的主观判断。同时,题目难度可细分为思维难度与实现难度:部分题目侧重考查思维深度,而另一些则对代码实现能力有更高要求。此外,不同专长领域的选手在解答同一道题时,所感知的难度也可能存在差异。因此,该难度体系仅作为训练参考。
下文将逐一说明各难度档次的大致界定标准及典型代表题目 。
入门(红色)
入门难度是体系中最低的等级,面向编程新手,主要考察分支结构、循环、数组以及简单字符串处理等基础内容,旨在帮助选手夯实基本功。一般而言,选手在掌握一门编程语言的基本语法后,即可顺利通过该难度的题目。通常而言,CSP-J 的第一题为入门难度。
代表试题:
- P1001 A+B Problem
- P1085 [NOIP 2004 普及组] 不高兴的津津
- P1909 [NOIP 2016 普及组] 买铅笔
- P1980 [NOIP 2013 普及组] 计数问题
- P1307 [NOIP 2011 普及组] 数字反转
- P1047 [NOIP 2005 普及组] 校门外的树
- P5015 [NOIP 2018 普及组] 标题统计
- P1200 [USACO1.1] 你的飞碟在这儿 Your Ride Is Here
普及-(橙色)
普及-难度试题主要涉及 基础算法与简单数据结构,例如简单的模拟、枚举、排序、贪心等算法的简单应用,也可能涉及队列、栈等基础数据结构,以及初等数论的基本概念。一般而言,选手在熟练完成入门难度试题的基础上,经过数十至一百小时的系统学习与训练,完成 100 余道普及-难度的试题,即可顺利完成该难度的试题。通常,CSP-J 的第二题属于普及-难度。如果目标是 CSP-J 组的复赛二等,需要稳定做出该难度试题。
代表试题:
- P1563 [NOIP 2016 提高组] 玩具谜题
- P1067 [NOIP 2009 普及组] 多项式输出
- P1068 [NOIP 2009 普及组] 分数线划定
- P1028 [NOIP 2001 普及组] 数的计算
- P1094 [NOIP 2007 普及组] 纪念品分组
- P1540 [NOIP 2010 提高组] 机器翻译
- P1030 [NOIP 2001 普及组] 求先序排列
- P1873 [COCI 2011/2012 #5] EKO / 砍树
- P1217 [USACO1.5] 回文质数 Prime Palindromes