正在载入在线练习界面,本页内容可直接阅读…
AK CSP › CSP-J 2022 第一轮真题 › 第 14 题
CSP-J 2022 第一轮 第 14 题:字符串不同子串个数
题目
一个字符串中任意个连续的字符组成的子序列称为该字符串的子串,则字符串 $\tt abcab$ 有( )个内容互不相同的子串。

选项
- A. $12$
- B. $13$
- C. $14$
- D. $15$
答案
B
题解
子串必须是原字符串中连续的一段字符,内容相同的子串只算一次。
把 $\tt abcab$ 的非空子串按长度分类:
| 长度 | 不同的子串 | 个数 |
|---|---|---|
| 1 | $\tt a,\ b,\ c$ | 3 |
| 2 | $\tt ab,\ bc,\ ca$ | 3 |
| 3 | $\tt abc,\ bca,\ cab$ | 3 |
| 4 | $\tt abca,\ bcab$ | 2 |
| 5 | $\tt abcab$ | 1 |
因此,非空子串共有 \[ 3+3+3+2+1=12 \] 个。再计入一个空串(长度为 $0$ 的字符串),共有 \[ 12+1=\boxed{13} \] 个,按题库采用的约定,选 B。
题面“任意个”是否包含 $0$ 个字符存在歧义:若只计算非空子串,则为 12 个,选 A;若计入空串,则为 13 个,选 B。
真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1
京公网安备11010502062986号