
B - Locked Rooms
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.
問題文は↑
はじめに部屋の先頭と末尾にダミー(1
)を入れ、それ以外の部屋に0を入れた配列を用意します
[1, 0, 0, 0, 0, 1]
Code language: JSON / JSON with Comments (json)
その後、先頭と末尾からそれぞれロックされたドア(1
)に当たるまで各配列の中身を+1
しながらループします
0の数が到達できない部屋の数になります
以下のコードでACできました↓
def i_map():
return map(int, input().split())
def i_list():
return list(map(int, input().split()))
n = int(input())
l = i_list()
ans = [0] * (n-1)
ans = [1] + ans + [1]
for i in range(n):
if l[i] == 0:
ans[i+1] = 1
elif l[i] == 1:
break
for i in range(n-1, -1, -1):
if l[i] == 0:
ans[i] = 1
elif l[i] == 1:
break
print(ans.count(0))
Code language: PHP (php)
コメント