본문 바로가기
코딩테스트 파이썬/Softeer

Softeer 연습문제(2단계) - 비밀 메뉴

by 세용용용용 2024. 6. 26.

Candidate | Softeer Assessment UI

 

Candidate | Softeer Assessment UI

 

softeer.ai

 

나의 코드

import sys

def _main(m, n, n_key, user_control):
    for idx in range(n - m + 1):
        if (n_key == user_control[idx:idx + m]):
            return "secret"
    return "normal"

m, n, k = map(int, sys.stdin.readline().rstrip().split())
n_key = list(map(int, sys.stdin.readline().rstrip().split()))
user_control = list(map(int, sys.stdin.readline().rstrip().split()))
print(_main(m, n, n_key, user_control))

 

시간 복잡도

for idx in range(n - m + 1) : n 만큼 순회 ( 선형 시간 복잡도 )
    user_control[idx:idx + m]) : m 크기만큼 슬라이싱 ( 선형 시간 복잡도 )
해당 알고리즘 시간 복잡도 : 이차형 시간 복잡도 ( O(n ** 2) )