빈 배열에 추가, 삭제하기

송용진·2023년 9월 1일
0

알고리즘

목록 보기
100/173

아무 원소도 들어있지 않은 빈 배열 X가 있습니다.
길이가 같은 정수 배열 arr과
boolean 배열 flag가 매개변수로 주어질 때,
flag를 차례대로 순회하며

flag[i]가 true라면
X의 뒤에 arr[i]를 arr[i] × 2 번 추가하고,

flag[i]가 false라면
X에서 마지막 arr[i]개의 원소를 제거한 뒤
X를 return 하는 solution 함수를 작성해 주세요.

내 코드

def solution(arr, flag):
    answer = []
    for i in range(len(flag)):
        if flag[i] == True:
            for j in range(arr[i]*2):
                answer.append(arr[i])
        else:
            answer = answer[:-arr[i]]
    return answer

예시 코드

def solution(arr, flag):
    X = []
    for i, f in enumerate(flag):
        if f:
            X += [arr[i]] * (arr[i]*2)
        else:
            for _ in range(arr[i]):
                X.pop()
    return X
profile
백엔드 개발자

0개의 댓글