【AtCoder】ABC375解説(Python)

パナソニックグループ プログラミングコンテスト2024(AtCoder Beginner Contest 375)の解説記事です。

目次

ABC375 A – Seats

問題

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

問題の要約

座席の状態が #. からなる長さ \(N\) の文字列 \(S\) で表され、\(S\) の \(i\) 文字目が # の場合、その座席には人が座っていることを表しており、\(S\) の \(i\) 文字目が . の場合、その座席は空いていることを表しています。整数 \(i\)(\(1 \leq i \leq N – 2\))のうち、座席 \(i\) と \(i + 2\) に人が座っており、座席 \(i + 1\) は空いているものの個数を求めよ。

解説

文字列の先頭から#.#となっているか判定する

解説

入力を受け取ります。

# 入力
N=int(input())
S=input()

答えを表す変数を用意します。

# 答えを表す変数
ans=0

文字列の先頭から#.#となっているか判定します。

# 順番に #.# となっているか判定する
for i in range(N-2):
  if S[i]=='#' and S[i+1]=='.' and S[i+2]=='#':
    ans+=1

答えを出力します。

# 答えを出力
print(ans)

解答

# 入力
N=int(input())
S=input()

# 答えを表す変数
ans=0

# 順番に #.# となっているか判定する
for i in range(N-2):
  if S[i]=='#' and S[i+1]=='.' and S[i+2]=='#':
    ans+=1

# 答えを出力
print(ans)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次