高層タワー
最近被paiza出品的《エンジニアが死滅シタ世界 〜アンドロイドとふたりぼっちで生きろ〜》(《程序员灭亡的世界~和机器人一起生活吧》)这个编程小游戏刷屏,也去试玩了一波。
这是一道类似于PPAP规则的字符串拼接题,找到两个字符串的最长公共前后缀,并去掉一个字符串的公共部分。
问题链接:https://paiza.jp/botchi/challenges/botchi_b_2001
题目描述
単語を組み合わせて新単語を作ります。
新単語は N 個の文字列を、前から順に結合して作ります。
この時、冗長さをなくすため、 前から結合した単語の末尾 と 後ろの単語の先端 が一番長く一致するように結合します。
例えば、 入力例 1 の “paiza”, “apple”, “letter” の場合、
先頭から “paiza”, “apple” を条件どおり重ねると “paizapple” となります。
この単語を更に次の単語と重ねると “paizappletter” となります。
なお、必ず前から順番に重ねるため、 入力例 2 の “poh”, “p”, “oh” を結合する場合は、
“poh” と “p” を重ねた後の単語 “pohp” と “oh” を重ね “pohpoh” となります。
N 個の単語が与えられるので、前から順番に単語を結合した場合の新単語を出力してください。
输入
N
w_1
w_2
...
w_N
・1 行目に、結合する単語の数を表す整数 N が与えられます。
・続く N 行のうちの i 行目 (1 ≦ i ≦ N) には、 i 番目に結合する単語を表す文字列 w_i が与えられます。
・入力は合計 N + 1 行であり、最終行の末尾に改行が 1 つ入ります。
输出
・2 ≦ N ≦ 100
・各 i (1 ≦ i ≦ N) に対して以下を満たす。
・1 ≦ (w_i の長さ) ≦ 100
・w_i は半角英小文字のみで構成されている。
样例1
样例输入
3
paiza
apple
letter
样例输出
paizappletter
样例2
样例输入
3
poh
p
oh
样例输出
pohpoh
题解
这是一道类似于PPAP规则的字符串拼接题,找到两个字符串的最长公共前后缀,并去掉一个字符串的公共部分。
看到最长公共前后缀</