전국 대회 선발 고사 코틀린(Kotlin)

2024. 11. 10. 22:04·프로그래머스
728x90
반응형

이번 문제는 지나가다 정답률이 낮은 문제를 발견해 풀어보았다.

 

이전과는 다르게 두 가지 방식으로 문제를 풀어보았는데

여러 자료형을 오가면서 풀어볼 수 있어서 나름 좋은 문제였다고 생각한다.

 

문제

문제

풀이 1. map -> list 변환

풀이 1

가장 처음 생각한 방식이다.

 

rank배열의 값과 인덱스가 모두 필요한 상황이었기 때문에 list만으로는 풀 수가 없다는 판단을 내렸다.

 

그래서 key, value로 저장할 수 있는 map을 선택했다.

 

이 때, rank배열의 각 값으로 key를 해당 index로 value를 지정했다.

 

그래야 참석 여부에 따라 map에 저장한 key로 정렬할 수 있기 때문이다.

 

정렬 이후에는 다시 리스트로 변환하여 가장 앞에서부터 3개의 값을 꺼내 값을 만들어 리턴해주었다.

 

풀이 2. list로 풀기 그런데 Pair를 곁들인

풀이 2

먼저 Pair가 무엇인지 물어보면 사실 나도 구구절절 설명하지 못한다.

 

다만 이름 그대로 한 쌍의 값을 가질 수 있는 클래스이다.

 

여기서 나는 <Int, Int> 와 같은 제네릭으로 Pair 클래스를 사용했다.

 

map을 사용할 때와는 달리 sortBy 함수를 사용해 map의 키 값을 정렬하듯 첫번째 원소로 정렬을 해주었다.

 

그리고 마지막은 동일하게 앞에서 3개를 꺼내 값을 만들어 리턴해주었다.

 

실행 결과

이번 문제에서 재밌는 실행 결과가 나왔다.

풀이 1 실행결과

바로 map을 사용해서 푼 방식이 실행 속도에서 거의 2배 차이가 난다는 점이었다.

 

신기하게 map이 더 빠른 속도를 보여주었다.

 

풀이 2 실행결과

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

'프로그래머스' 카테고리의 다른 글

[PCCP 기출문제] 1번 / 동영상 재생기 코틀린(Kotlin)  (0) 2024.11.13
배열 조각하기 코틀린(Kotlin)  (0) 2024.11.12
왼쪽 오른쪽 코틀린(Kotlin)  (1) 2024.11.09
[PCCE 기출문제] 7번 / 버스 자바(Java)  (0) 2024.11.07
바탕화면 정리 코틀린(Kotlin)  (0) 2024.10.31
'프로그래머스' 카테고리의 다른 글
  • [PCCP 기출문제] 1번 / 동영상 재생기 코틀린(Kotlin)
  • 배열 조각하기 코틀린(Kotlin)
  • 왼쪽 오른쪽 코틀린(Kotlin)
  • [PCCE 기출문제] 7번 / 버스 자바(Java)
BonusTrack02.dev
BonusTrack02.dev
공부, 일상
  • BonusTrack02.dev
    BonusTrack02.dev
    BonusTrack02.dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (237)
      • Dev experience (85)
        • Android (84)
        • Kotlin (1)
      • Study (62)
        • Kotlin (26)
        • Swift (17)
        • Java (19)
      • 프로그래머스 (68)
      • 주저리주저리 (22)
        • 카페 (5)
        • 음식점 (4)
        • 컨퍼런스 (1)
        • 팝업스토어 (4)
        • 전시회 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    aac
    안드로이드
    자바
    Kotlin
    daterangepicker
    Java
    배열
    오블완
    스위프트
    코틀린
    Observer
    databinding
    PCCE
    programmers
    android
    coroutines
    jetpack
    LiveData
    room
    MVVM
    SWIFT
    티스토리챌린지
    프로그래머스
    Material
    getNumericValue
    CodeLab
    코루틴
    ios
    ViewModel
    viewModelScope
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
BonusTrack02.dev
전국 대회 선발 고사 코틀린(Kotlin)
상단으로

티스토리툴바