• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

곳감문제 곳감 갯수 더할 때 질문입니다.

22.05.15 15:37 작성 조회수 96

0

from collections import deque

def solution() :
    n = int(input())
    tree = [list(map(int, input().split())) for _ in range(n)]
    m = int(input())
   
    for _ in range(m) :
        c, d, v = map(int, input().split())
        tmp = deque(tree[c-1])
       
        if d == 0 :
            for _ in range(v) :
                tmp.append(tmp.popleft())
        else :
            for _ in range(v) :
                tmp.appendleft(tmp.pop())
        tree[c-1] = list(tmp)

    s = 0
    e = n-1
    res = 0
    for i in range(n) :
        res += sum(tree[i][s : e+1])
        if i < n//2 :
            s += 1
            e -= 1
        else :
            s -= 1
            e += 1
   
    print(res)
   
solution()

코드는 위와 같습니다.
마지막에 곳감갯수 더하실 때 for문을 활용하여 더하셨는데 위 코드처럼 슬라이싱과 sum을 활용해도 괜찮을까요??
for문을 사용하는것이 시간복잡도가 덜 할까요??

답변 1

답변을 작성해보세요.

0

안녕하세요^^

네. 잘 하신 코드입니다. 영상과 시간복잡도 차이가 없어 보입니다.