0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

paizaラーニング問題集「【条件判定 3】過剰コンプライアンス」を解いてみた

Posted at

▼考え方

この問題を解くために私が考えた内容1.~2.2.を以下に示します。

1.放送したい単語Vを1つずつインプットし、題意に基づいた検閲処理を行います。

2.1.放送したい単語Vの前半分の検閲処理を行います。変数v1を用いたV[:v1]は、放送したい単語Vの前半分を示します。V[v1:]は前半分以外の残りを示します。変数s1を用いたS[:s1]は、放送禁止単語Sの前半分を示します。

2.2.放送したい単語Vの後ろ半分の検閲処理を行います。変数v2を用いたV[v2:]は、放送したい単語Vの後ろ半分を示します。V[:v2]は後ろ半分以外の残りを示します。変数s2を用いたS[s2:]は、放送禁止単語Sの後ろ半分を示します。

▼コード

########## 処理0(準備) モジュールインポート,インプット ###########

import math

N = int(input())

S = input()

########## 処理1 放送したい単語Vの検閲処理、出力 ###########

for i in range(N):

    # 考え方1.
    V = input()
    
    if V == S:
        print("banned")
    
    elif len(V) != len(S):
        print(V)

    else:
        # 考え方2.
        v1 = math.ceil(len(V)/2)
        s1 = math.ceil(len(S)/2)
        v2 = math.floor(len(V)/2)
        s2 = math.floor(len(S)/2)

        # 考え方2.1.
        if V[:v1] == S[:s1]:
            V = len(V[:v1])*"x" + V[v1:]

        # 考え方2.2.
        elif V[v2:] == S[s2:]:
            V = V[:v2] + len(V[v2:])*"x"
            
        print(V)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?