튜플(tuple)
해당 문제까지 연속되는 O의 개수만큼 점수를 얻고, 그 점수를 출력하는 문제입니다.
일단 입력받는 문자열이 붙어있는데 튜플을 이용하여 한 글자씩 나누어줍시다.
t = int(input())
for i in range(t):
arr = tuple(map(int,input().split())이러면 O, O, X, X, O, X, X, O, O, O로 한 글자씩 나누어져서 튜플형으로 바뀌게 됩니다.
한 문제씩 답안을 받는 것은 for문으로 쉽게 구할 수 있습니다. 연속된 점수를 받게 만드는 것도 if문으로 이용하여 for문안에 받을 수 있는 점수 값을 1씩 추가하거나 0으로 바꾸는 것으로 구현할 수 있겠습니다.
t = int(input())
for i in range(t):
arr = tuple(input())
score = 0 #총 점수
x = 0 #더할 점수
for j in range(len(arr)):
# if/else로 O가 나오면 x에 1점을 추가하고, X면 x = 0으로 만들어주고 더함
if arr[j] == 'O': x += 1
else: x = 0
score += x
print(score)튜플로 풀 수 있는 문제들은 모두 리스트로 풀 수 있지만, 리스트로 풀 수 있는 문제들은 튜플로 풀 수 없는 문제가 많기 때문에 저는 보통 전부 다 리스트로 풀고 있습니다.
풀어볼 문제
튜플 메서드
튜플에서 사용하는 메서드는 이미 list에서 배운 메서드입니다.
count
count는 찾고자 하는 값이 튜플 안에 몇 개가 있는지 출력하는 메서드입니다.
index
index는 요소의 위치를 찾아주는 메서드입니다. 찾고자 하는 값이 튜플에 여러 개가 있다면 index의 값이 가장 작은 위치를 반환합니다. 찾고자 하는 값이 튜플에 없으면 오류가 나옵니다.
Last updated