【AtCoder】ABC396解説(Python)

AtCoder Beginner Contest 396の解説記事です。

目次

ABC396 A – Triple Four

問題

問題文の要約は以下の通りです。

問題の要約

長さ \(N\) の整数列 \( A = \left( A_1, A_2, \dots, A_N \right) \) が与えられる。\(A\)の中に同じ要素が \(3\) つ以上連続する箇所が存在するか判定せよ。 より厳密には,\(1 \leq i \leq N-2\) なる整数 \(i\) に対して \( A_i = A_{i+1} = A_{i+2} \) を満たすものが存在するかどうかを判定せよ。

解説

for文を用いて、\( A_i, A_{i+1}, A_{i+2} \) が等しい個所があるか判定する。

解説

入力を受け取ります。

# 入力
N=int(input())
A=list(map(int,input().split()))

連続する 3 つの要素 \( A_i, A_{i+1}, A_{i+2} \) が等しいか判定し、条件を満たすとき Yes を出力し、終了します。ループが終了し、条件を満たす箇所がないときは No を出力します。

# 連続する 3 つの要素 A[i], A[i+1], A[i+2] が等しいか判定
for i in range(N-2):
  if A[i]==A[i+1]==A[i+2]:
    # 条件を満たしたので 'Yes' を出力し、終了
    print('Yes')
    exit()
# ループが終了し、条件を満たす箇所がないときは 'No' を出力
print('No')

解答

# 入力
N=int(input())
A=list(map(int,input().split()))

# 連続する 3 つの要素 A[i], A[i+1], A[i+2] が等しいか判定
for i in range(N-2):
  if A[i]==A[i+1]==A[i+2]:
    # 条件を満たしたので 'Yes' を出力し、終了
    print('Yes')
    exit()
# ループが終了し、条件を満たす箇所がないときは 'No' を出力
print('No')
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次