코딩테스트 파이썬/백준

누울 자리를 찾아라

세용용용용 2024. 12. 15. 17:42

1652번: 누울 자리를 찾아라

 

나의 풀이

import sys
input = sys.stdin.readline

def _sleep(map_list, n):
    ga, se = 0, 0
    for i in range(n):
        now_line = ''
        for j in range(n):
            now_line += map_list[j][i]
                
        for ga_sleep in map_list[i].split('X'):
            if len(ga_sleep) >= 2:
                ga += 1
        for se_sleep in now_line.split('X'):
            if len(se_sleep) >= 2:
                se += 1
    return f"{ga} {se}"
    
n = int(input())
map_list = []
for _ in range(n):
    map_list.append(input().rstrip())
print(_sleep(map_list, n))

 

시간 복잡도

_sleep 함수에서 모든 map_list를 탐색하며 누울 자리를 찾음
for i in range(n) : 선형 시간 복잡도
	for j in range(n) : 선형 시간 복잡도
해당 알고리즘 시간 복잡도 : 이차형 시간 복잡도 ( O(n**2) )