티스토리 뷰

 

arr의 첫 번째 요소가 3이고 flag가 true이므로 3을 (3*2)번 추가한다. 그리고 arr의 두 번째 요소가 2이고 flag가 false이므로 존재하는 요소에 마지막에서 2번 삭제한다.

 

추가하는 건 어떻게든 했는데 마지막 원소 몇 개를 제거하는게 잘 안돼서 답답했다.

 

결국 찾아보니 삭제를 하지 않고 뒤에 몇 개만 빼고 앞에서부터 그냥 answer에 넣어주는 것이었다...!!!

 

def solution(arr, flag):
    answer = []
    for i in range(len(flag)):
        if flag[i] == True:   #왜 if flag[i]:  이렇게만 해도 가능할까?
            answer.extend([arr[i]]*arr[i]*2)
        else:
            answer = answer[:-arr[i]]   #마지막을 빼지않고 처음부터 뺀 만큼만을 answer로 한다.
    return answer

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함