greenhelix
greenhelix
greenhelix
07-07 00:06
  • All (229)
    • Algorithm (118)
      • Algorithm (17)
      • Graph (0)
      • Core (6)
      • Python (18)
      • PythonSnippet (4)
      • Java (59)
      • Kotlin (14)
    • Project (0)
    • Study (8)
      • License (5)
      • EIP (3)
    • Programming (63)
      • Android (41)
      • Flutter (1)
      • Bugs Life (21)
      • Linux (0)
    • Tech (32)
      • Tech (17)
      • Drone (4)
      • Hacking (11)
    • Life (6)
      • INGRESS (1)
      • 심시티빌드잇 (0)
250x250

티스토리

hELLO · Designed By 정상우.
greenhelix

greenhelix

#25_Code Signal Arcade >> Array Replace
Algorithm/Java

#25_Code Signal Arcade >> Array Replace

2019. 11. 28. 12:00

Code Signal -Arcade

코드시그널
아케이드 문제 관련 풀이들을 구글링하면서 찾아가는 일지를 하나씩하나씩 기록하고자 합니당. 

주로 자바 위주로 풀이를 올릴예정이고, 추가로 공부하고 있는 파이썬이나 코틀린, GO, 자바스크립트 더 나아가 스위프트까지...

되는대로 가능한대로 구글링하고 정답맞추면 바로 패스!!
이런식으로 좋은 코드이든 말든 짜집기한 결과물들을 개인적 소장을 위해 기록합니다. ^^
참고 사이트들은 아래에 링크로 남겨둘터이니 자세하고 더욱 깊은 내용들은 링크로 들어가보세요!


Array Replace

배열 대체하기.. 재배치?? 

주어진 숫자배열에서 elemToReplace 의 값을 substitutionElem으로 대체하여 재배치 시켜라...

뭐 이런 내용입니다... 

어떤 바꿀값을 선택하였고, 그 값을 어떠한 값으로 바꾸라는 것인데 그게 배열안에 있고.. 난감하고

.그런거죠..?

 

하지만 간단합니다. 

이건 빨리품! 

답안바로 볼께요. 

int[] arrayReplace(int[] input, int changeNum, int whatChange) {    
    for(int i = 0; i< input.length; i++)
    { input[i] = input[i] == changeNum ? whatChange:input[i]; }
    return input; 
}

어떄요 ? 빠르죠?

반복문을 통해서 일단 쫘악 배열을 훑어줄 준비를 합니다. 

 

그리고 나서 조건문을 통해서 input[i] 가 ChangeNum과 같은지 확인하고. (  input[i] == changeNum ? )

 

그조건이 맞다면 그 값을 whatChange로 바꿔주고 아니라면 그대로 냅두면 그만인겁니다. ㅎㅎ 

 

끝..ㅋㅋ 

 

간단했습니다. 하하하하하하 오랜만이다. 이런 문제. 

 

하지만 방심은 금물 앨리트들은 한줄일수도 있으니깐 확인해볼께요. 

 


JAVA 

int[] arrayReplace(int[] inputArray, int elemToReplace, int substitutionElem) {
    return Arrays.stream(inputArray)
    .map(o -> o == elemToReplace ? substitutionElem : o)
       .toArray();
}

ㅎ 제가 더 좋은거 같은뎅.. 아닌가.. 

이분은 stream 을 활용하셨네요. 방식은 똑같지만 사용하는 방법이 다른것을 썼을뿐 별 다른거는 없지만 

더 좋아보이는건 무엇..? 


JS

function arrayReplace(inputArray, elemToReplace, substitutionElem) {
    return inputArray.map(i => i == elemToReplace ? substitutionElem : i)
}

이건 대체 뭐죠?;;; 한줄이라니! 이분은 바로 map을 사용하셨네요. 


PYTHON3

def arrayReplace(i, e, s):
    return [x if x!=e else s for x in i]

이런 썩을... 더 짧고 간단해.. 씸박하게.. 슬프다.

 

파이썬 승. 

ㅋㅋㅋ

 

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Algorithm > Java' 카테고리의 다른 글

#26_Code Signal Arcade >> Even Digits Only  (0) 2019.11.30
#24_Code Signal Arcade >> Mine Sweeper  (0) 2019.11.27
#23_Code Signal Arcade >> Box Blur  (0) 2019.11.26
    'Algorithm/Java' 카테고리의 다른 글
    • #27_Code Signal Arcade >> Variable Name
    • #26_Code Signal Arcade >> Even Digits Only
    • #24_Code Signal Arcade >> Mine Sweeper
    • #23_Code Signal Arcade >> Box Blur
    greenhelix
    greenhelix
    개발에 관한 것들과 개인적인 것을 담는 블로그

    티스토리툴바