文字列A-B

1042 ワード

タイトルの説明:
本題はA−Bの計算を要求する.しかし、面倒なことに、AとBは文字列である.すなわち、文字列Aから文字列Bに含まれる文字をすべて削除し、残りの文字からなる文字列A−Bである.
入力形式:
2行に文字列AとBを前後して入力します.両方の文字列の長さは10 4を超えず、各文字列が可視のASCIIコードと空白文字で構成されていることを保証し、最後に改行で終了します.
出力フォーマット:
1行にA−Bの結果文字列を印刷します.
サンプルを入力:
I love GPLT!  It's a fun game!
aeiou

出力サンプル:
I lv GPLT!  It's  fn gm!

問題解決の考え方:
ハハハ私は今このような问题を见て、第1反応はPythonを使って、どうしてなくて、Pythonのためですか??これらのコードを説明すると、まずユーザの1行目の入力をスペースを区切り文字としてリストAに格納し、ユーザの2行目の入力を文字列Bに割り当て、まずリストAを文字列sに変換し、それからfor-inで文字列sのすべての文字をループし、文字列Bにもこの文字があれば削除する.ループが完了したら、文字列sを直接出力すればよい.
更新:この問題は最初はHBUOJで見たもので、当時はPythonで書かれていたが、その後、この問題がエレベーター試合とPAT甲級に「GPLT」L 1-011 A-B、「PAT甲級」String Subtractionがあることを知った.
ACコード:
A = input().split()  # list   A
B = str(input())
s = ""  #s      B        
Count = 0
for word in A:
    s += word
    Count += 1
    if Count < len(A):
        s += " "
for i in s:
   if i in B:
       s = s.replace(i,"",1)
print(s)