-
백준 8958번 (리스트와 반복)백준 with Python 2022. 12. 26. 18:50
리스트로 받아 리스트 요소를 하나씩 검사하며 앞 쪽 리스트 요소와 비교하며 점수를 올리는 방식으로 풀어냈다.
T= int(input())
for i in range(T):
x=list(input())
ser=0
if x[0]=='O':
score=1
ser=1
else:
score=0
for j in range(1, len(x)):
if x[j]=='O':
if x[j-1]=='O':
ser=ser+1
else:
ser=1
score=score+ser
print(score)하지만 리스트를 횡단할 때 for j in range(1, len(x))로 굳이 하지 않고 더 깔끔하게 풀어내는 법을 공부했다.
물론 내가 풀어낸 방식에서는 앞 쪽 요소와 비교하는 구문이 들어가기 때문에 방식을 조금 바꿔야 한다.
T= int(input())
for i in range(T):
x=list(input())
score=0
plus=0
for j in x:
if j=='O':
plus=plus+1
else:
plus=0
score=score+plus
print(score)'백준 with Python' 카테고리의 다른 글
백준 1408번 (문자열 연결, 숫자 출력 앞에 0 붙이기) (0) 2022.12.28 백준 9506번 (리스트) (0) 2022.12.26 백준 2754번 (딕셔너리) (0) 2022.12.25 백준 2476번 (a==b==c와 max()) (0) 2022.12.24 백준 1934번 (최대공약수와 최소공배수) (0) 2022.12.23