ALGORITHM/PYTHON

백준 BAEKJOON 31823번 악질 검거 [PYTHON/파이썬]

칼코
반응형

 

 

 

 

 

백준 BAEKJOON 31823번 악질 검거 [PYTHON/파이썬]


<문제 출처> (BRONZE Ⅰ)

https://www.acmicpc.net/problem/31823

 

 

 

 

 

 

 

<풀이>

먼저 최대 리버스-스트릭을 구하기 위한 set 집합을 선언하였다.

동아리원 수에 맞춰서 for 문을 돌렸고

이들의 활동 기록과 이름을 받은 뒤에

최장 리버스-스트릭을 구하기 위해 다시 한 번 for 문을 돌렸다.

 

 

 

 

 

 

 

<코드>

N, M = map(int, input().split())
countStreak = set()  # 최대 리버스-스트릭
KPSC_List = []	# 최장 리버스-스트릭, 이름을 저장할 리스트

for _ in range(N):
    record = input().split()
    streak, name = record[:M], record[M]

    maxStreak = 0  # 최장 리버스 스트릭 확인
    tmp = 0
    for i in streak:
        if i == ".":  # 문제를 풀었으면
            tmp += 1  # tmp에 1을 더함
        else:  # 그렇지 않다면
            tmp = 0  # 0으로 초기화
        maxStreak = max(maxStreak, tmp)  # 최장 리버스스트릭 업데이트

    countStreak.add(maxStreak)  # 최대 리버스-스트릭을 set 집합에 추가
    KPSC_List.append([maxStreak, name])  # 최장 리버스-스트릭과 이름을 저장

print(len(countStreak))
for K in KPSC_List:
    print(*K)

 

 

 

 

 

 

반응형