校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 算法 > 字符串算法
题目

由3 个a,5 个b 和2 个c 构成的所有字符串中,包含子串“abc”的共有( )个

A.40320

B.39600

C.840

D.780

解答

正确答案是 D

首先题目中的子串应该是连续的一段,那么我们取出一个abc看做一个单元,和剩下2个a,4个b,1个c进行全排,方案为:8!/(1!2!4!1!)=840;然后如果出现两个abc则会被重复计算,那么减去重复的6!/(2!1!3!0!)=60,答案就是840-60=780

C 12条回复 评论
盖子子

这题的解析还是蛮不错的啊

发表于 2018-10-11 19:43:00
0 0