프로그래머스 | 없는 숫자 더하기

2023. 12. 28. 09:53· 코딩테스트

 

풀이

class Solution {
    fun solution(numbers: IntArray): Int {
        var answer: Int = 0
        for(i in 0..9){
            if(numbers.indexOf(i)==-1){
                answer += i
            }
        }
        return answer
    }
}

 

구현은 바로 했는데 다른 사람 풀이 보면 백퍼 이것보다 훨씬 더 간단할 것 같다 ㅎ

 

fold 메소드를 드디어 처음 써봤다. 그런데  for 문이랑 별 차이가 없다.

class Solution {
    fun solution(numbers: IntArray): Int {
        var answer: Int = (0..9).fold(0){acc,num -> acc + if(numbers.indexOf(num) ==-1) num else 0 }
        return answer
    }
}

 

 

 

다른 사람 풀이 1

class Solution {
    fun solution(numbers: IntArray): Int  = 45 - numbers.sum()
}

0부터 9까지의 합인 45에서 배열의 합만큼 뺐다.

 

 

다른 사람 풀이 2

class Solution {
    fun solution(numbers: IntArray): Int = (0..9).filterNot(numbers::contains).sum()
}

filterNot(조건)

: 조건에 맞지않는 원소를 반환

numbers::contains

: numbers에 포함된 요소인지 확인

 

❓더블콜론 연산자 ::

더블콜론은 리플렉션을 위해서 사용한다.  *리플렉션 : 런타임에 인스턴스 등을 통해 객체의 내부 구조 등을 파악

함수를 직접 호출하는게 아니라 객체로 접근할 수 있다.

 

'코딩테스트' 카테고리의 다른 글

프로그래머스 | 수박수박수박수 | Kotlin  (1) 2024.01.03
프로그래머스 | 가운데 글자 가져오기 | Kotlin  (1) 2024.01.02
프로그래머스 | 핸드폰 번호 가리기  (1) 2023.12.27
프로그래머스 | 음양 더하기  (0) 2023.12.26
프로그래머스 | 나누어 떨어지는 숫자 배열  (2) 2023.12.26
'코딩테스트' 카테고리의 다른 글
  • 프로그래머스 | 수박수박수박수 | Kotlin
  • 프로그래머스 | 가운데 글자 가져오기 | Kotlin
  • 프로그래머스 | 핸드폰 번호 가리기
  • 프로그래머스 | 음양 더하기
다시은
다시은
🔥
다시은
재은로그
다시은
전체
오늘
어제
  • 분류 전체보기 (127)
    • 코딩테스트 (40)
    • Language (2)
      • JAVA (2)
      • Kotlin (0)
      • TypeScript (0)
    • SQL (1)
    • 인프라 (1)
    • 왕초보일지 (77)
    • 회고 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • mysql
  • 스프레드시트
  • Kotlin
  • 문자열변환
  • googleapis
  • sql
  • SQL문법

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
다시은
프로그래머스 | 없는 숫자 더하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.