AtCoder Beginner Contest 124 A〜C問題

前書き

AtCoder Beginner Contest 124 A〜C問題を解きました。

A問題

  • 難易度:灰
  • 時間:1分

atcoder.jp

A,B=map(int,input().split())
print(max(A+B,max(2*A-1, 2*B-1)))

B問題

  • 難易度:灰
  • 時間:6分

atcoder.jp

確認せず回答を提出してしまったので、WAを弾いてしまいました。
i番目の山が左の山の最大高さ以上であればカウントします。

import sys
N=int(input())
H=list(map(int,input().split()))
_max,count=H[0],1

for h in H[1:]:
  if _max<=h: 
    _max=h
    count+=1
print(count)

C問題

  • 難易度:灰
  • 時間:4分

atcoder.jp

タイルの色が0or1で示されていたので、これを活用します。
与えられているタイルと交互に色が変わっているタイルの整合性を確認します。
一番左を白 or 黒、どちらの色に基準を合わせた方が塗り直すタイルの数が少なくなるかのチェックもします。

S=input()
countA,countB=0,0
for i in range(len(S)):
  if i%2==int(S[i]):countA+=1
  else: countB+=1
print(min(countA,countB))