[BOJ]8958:OXテスト
🔒 例
>> 5
>> OOXXOXXOOO
>> OOXXOOXXOO
>> OXOXOXOXOXOXOX
>> OOOOOOOOOO
>> OOOOXOOOOXOOOOX
10
9
7
55
30
🔧 に答える
1. n = int(sys.stdin.readline().rstrip())
2. 연속된 O의 개수 세기
2.1 flag(boolean) 활용
2.2 'X', flag = False, points = 0
2.3 'O', flag = True & points += 1
🔑 答案用紙
import sys
n = int(sys.stdin.readline().rstrip())
for i in range(n):
quiz = sys.stdin.readline()
score = 0
flag = False
points = 0
for j in range(len(quiz)):
if quiz[j] == 'O':
flag = True
points += 1
score += points
else:
flag = False
points = 0
print(score)
💡 コンセプト
### flag 변수
- 반복문을 실행할 때 이전 상황에 대한 정보가 필요한 경우, 활용
- 주로 boolean으로 True,False로 지정
- 상황에 따라 True, False로 변경
Reference
この問題について([BOJ]8958:OXテスト), 我々は、より多くの情報をここで見つけました https://velog.io/@ohhj1999/BOJ-8958テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol