시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 512 MB | 37 | 30 | 30 | 100.000% |
テキストエディタの最も重要な機能の 1 つとして,コピー&ペースト (複写・貼付) がある.JOI 社は,コ ピー&ペーストを非常に高速に処理するテキストエディタの開発を進めている.JOI 社に所属する優秀な プログラマであるあなたは,核となるコピー&ペースト処理のテストの担当となった.JOI 社の命運が懸 かっているので,何としても正確かつ高速なプログラムを作成したい.
具体的な仕様は次のとおりである.初め,ファイルの内容は文字列 S である.引き続いて,コピー&ペー ストの操作が N 回行われる.i 回目の操作は,位置 Ai から位置 Bi までの文字列を複写し,複写された文 字列を元の文字列の位置 Ci に挿入貼付する,というものである.ここで,位置 x とは,文字列の先頭から x 個の文字をたどった直後の箇所を表す (位置 0 は文字列の先頭である).例えば,文字列 copypaste の位 置 6 とは,文字 ‘a’ と文字 ‘s’ の間を表す.位置 9 は文字 ‘e’ の後ろ,すなわち,この文字列の末尾を表す. ただし,操作後に文字列の長さが M を超えた場合,長さが M になるまで文字列の右端から順に文字が削 除される.
あなたの任務は,エディタのテストのため,N 回の操作後に得られる文字列の最初の K 文字を予め求め ておくことである.
整数 K,文字列の長さの上限 M,初めの文字列 S,操作の回数 N および N 回のコピー&ペーストの操 作の指示が与えられたとき,操作後の文字列の最初の K 文字を求めるプログラムを作成せよ.
標準入力から以下の入力を読み込め.
標準出力に,N 回の操作後の文字列の最初の K 文字を 1 行で出力せよ.
追加の制限はない.
2 18 copypaste 4 3 6 8 1 5 2 4 12 1 17 18 0
ac
この例では,N = 4 回のコピー&ペーストの操作は以下のように行われる.
よって,操作後の文字列 acyppypastoopyppyp の先頭 K = 2 文字である ac を出力する.
6 100 jjooii 3 5 6 2 4 6 1 1 2 3
joioji