JJ プログラム仙人修行日誌

2024/04/20 からは、プログラム仙人修行の日誌を書いてます。

 長さ 3 の文字列 c1c2c3 の中には,長さ 2 以上の連続した部分文字列として
c1c2,c2c3 及び c1c2c3 の三つがある。長さ 100 の文字列 c1c2 … c100 の中
に,長さ 10 以上の連続した部分文字列が全部で幾つあるかを求める式はどれか。

 ア 1+2+3+…+88+89

 イ 1+2+3+…+89+90

 ウ 1+2+3+…+90+91

 エ 1+2+3+…+98+99

注意:c1c2 の c の後の数字は,本来は添字で小さい数字です。

■キーワード■ 計算問題:文字列

■解答■
  基本情報技術者午前平成18年秋問10

 ウ 1+2+3+…+90+91

> 1〜10...91〜100 → 1〜91

 どうもありがとうございます。

> 長さ 100 の文字列から長さ 10 以上の連続した部分文字列を取り出す組み合わせ
> を文字列の長いほうから数えていくと、1 ( 長さ 100 ) + 2 ( 長さ 99 ) + 3 +
> ・・・ + 90 ( 長さ 11 ) + 91 ( 長さ 10 ( 1 から始まって 10 で終わるものか
> ら 91 で始まって 100 で終わるものまで ) ) となる。

 どうもありがとうございます。

> 文字列のパターンを長さから考えます。
>
> 長さ 100 の文字列 c1c2 … c100 ==> 1 つ
> 長さ 99 の文字列 c1c2 … c99 計
> c2 … c100  ==> 2 つ
> 長さ 98 の文字列 c1c2 … c98
> c2 … c99 計
> c3 … c100 ==> 3 つ
> 長さ 97 の文字列 c1c2 … c97
> c2 … c98
> c3 … c99 計
> c4 … c100 ==> 4 つ
>
> 長さ 10 の文字列 c1c2c3c4c5c6c7c8c9c10
> c2c3c4c5c6c7c8c9c10c11
> c3c4c5c6c7c8c9c10c11c12
> …
> c90c91c92c93c94c95c96c97c98c99 計
> c91c92c93c94c95c96c97c98c99c100 ==> 91 つ
> 上記より
> 長さが10以上の連続した部分文字列の個数は,
> 1 + 2 + 3 + 4 … + 91
> 回答は ウ です。
>
> 参考(こんな解き方もありました。)
> http://fe.teamwk.net/kotsu/18h/post_421.html

 どうもありがとうございます。

                                                                                                                                              • -