長さn の文字列C1C2…Cnの中に、部分文字列は全部で幾つあるかを表す式はどれか。ここで、空文字列(長さ0の文字列)とC1C2…Cn自身も部分文字列とみなす。例えば、長さ3の文字列C1C2C3の中に、部分文字列はC1、C2、C3、C1C2、C2C3、C1C2C3及び空文字列の7個がある。
ア | 2n-1 |
イ | n(n+1)/2+1 |
ウ | n(n-1)+1 |
エ | n!+1 |
【考え方1】
【考え方2】
長さ6の部分文字列 | : | c1c2c3c4c5c6 | ⇒1個 |
長さ5の部分文字列 | : | c1c2c3c4c5,c2c3c4c5c6 | ⇒2個 |
長さ4の部分文字列 | : | c1c2c3c4,c2c3c4c5,c3c4c5c6 | ⇒3個 |
長さ3の部分文字列 | : | c1c2c3,c2c3c4,c3c4c5,c4c5c6 | ⇒4個 |
長さ2の部分文字列 | : | c1c2,c2c3,c3c4,c4c5,c5c6 | ⇒5個 |
長さ1の部分文字列 | : | c1,c2,c3,c4,c5,c6 | ⇒6個 |
長さnの部分文字列 | ・・・ | 1個 |
長さn-1の部分文字列 | ・・・ | 2個 |
長さn-2の部分文字列 | ・・・ | 3個 |
: | ||
長さ3の部分文字列 | ・・・ | n-2個 |
長さ2の部分文字列 | ・・・ | n-1個 |
長さ1 の部分文字列 | ・・・ | n個 |