티스토리 뷰

Codesignal

code signal - 25. arrayReplace

터보건 2020. 2. 23. 00:12

Question

Given an array of integers, replace all the occurrences of elemToReplace with substitutionElem.


Example

For inputArray = [1, 2, 1], elemToReplace = 1, and substitutionElem = 3, the output should be arrayReplace(inputArray, elemToReplace, substitutionElem) = [3, 2, 3].


Input/Output

  • [execution time limit] 4 seconds (py3)

  • [input] array.integer inputArray

    Guaranteed constraints: 0 ≤ inputArray.length ≤ 104, 0 ≤ inputArray[i] ≤ 109.

  • [input] integer elemToReplace

    Guaranteed constraints: 0 ≤ elemToReplace ≤ 109.

  • [input] integer substitutionElem

    Guaranteed constraints: 0 ≤ substitutionElem ≤ 109.

  • [output] array.integer


MY_ANSWER

def arrayReplace(inputArray, elemToReplace, substitutionElem):
    answer = []
    for i in inputArray:
        if i != elemToReplace:
            answer.append(i)
        else:
            answer.append(substitutionElem)

    return answer
  • elemToReplace의 값을 substitutionElem으로 바꾸는 문제
  • elemToReplace값이 아니면 그대로 inputArray의 i 값을 append, elemToReplace값이면 substitutionElem으로 대체

Best_ANSWER

def arrayReplace(inputArray, elemToReplace, substitutionElem):
    return [x if x!=elemToReplace else substitutionElem for x in inputArray]
  • list comprehension과 if ~ else 구문을 동시에 사용하여 코드를 줄였다.

'Codesignal' 카테고리의 다른 글

code signal - 27. variableName  (0) 2020.02.23
code signal - 26. evenDigitsOnly  (0) 2020.02.23
code signal - 24. Minesweeper  (0) 2020.02.22
code signal - 23. boxBlur  (0) 2020.02.20
code signal - 22. avoidObstacles  (0) 2020.02.20
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함