티스토리 뷰
단계별 문제풀이 11단계 브루트포스
- with() 함수는 어떤 객체의 이름을 반복하지 않고 객체에 대해 다양한 연산을 수행할 수 있게 해준다.
BufferedReader(InputStreamReader(System.`in`) 대신 System.`in`.bufferedReader()를 사용하면 코드도 깔끔해지고 import를 줄일 수 있다. - 각 사람의 몸무게와 키를 입력받아서 split(), map() 함수를 사용하여 정수로 바꿔주었다.
- 덩치가 더 큰 사람의 수를 구하기 위해 코틀린에서 제공하는 Collection API 중 count 함수를 사용했다.
- count 함수는 조건을 만족하는 원소의 개수를 반환한다.
단계별 문제풀이 12단계 정렬
- distinct() 함수는 컬렉션 내 중복된 항목을 제외하고 컬렉션을 반환한다.
- sort() 함수도 있고 sorted() 함수도 있는데 sorted() 함수는 정렬된 List 타입으로 반환해준다.
sorted()를 사용하는 경우에는 해당 리스트를 따로 저장을 해주어야 하고 List 타입의 경우 sorted만 존재한다.
반면 sort() 함수를 사용하면 해당 MutableList를 정렬해주기 때문에 따로 저장을 하지 않아도 된다. - 위 코드에서는 coord가 List 타입이기 때문에 sorted 함수를 사용했다.
- map에 해당 숫자보다 작은 좌표들의 개수를 저장해둔다.
중복을 제거하고 정렬된 리스트에서의 인덱스가 바로 해당 숫자보다 작은 좌표들의 개수이다. - StringBuilder는 문자열을 더할 때 새로운 객체를 생성하는 것이 아닌 기존의 데이터를 더하는 방식을 사용하기 때문에 속도도 빠르며 상대적으로 부하가 적다.
출력해야 하는 것이 많은 경우에는 StringBuilder를 사용하자!
'프로그래밍 언어 > Kotlin' 카테고리의 다른 글
Kotlin Collection 관련 함수들을 알아보자! (filter, map) (0) | 2021.07.29 |
---|---|
Kotlin Collections에 대해 알아보자! (List, Map, Set) (0) | 2021.07.27 |
Kotlin 기본 다지기 3 (0) | 2021.07.25 |
Kotlin 기본 다지기 (0) | 2021.07.25 |
Kotlin 기본 다지기 2 (0) | 2021.07.24 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 트리
- Two Pointer
- 재귀
- 이분 탐색
- algorithm
- 그래프
- 스택
- SW Expert Academy
- 자바
- 두 포인터
- Java
- 백준
- 브루트포스
- 정렬
- 큐
- 알고리즘
- SWEA
- dfs
- programmers
- BFS
- C++
- Kotlin
- 문자열
- 배열
- 프로그래머스
- BOJ
- 위상 정렬
- 구현
- 분할 정복
- 투 포인터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
글 보관함