일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ANR이란
- 플러터 설치 2022
- 객체
- 스택 자바 코드
- 안드로이드 레트로핏 crud
- android retrofit login
- 안드로이드 유닛 테스트
- rxjava disposable
- 안드로이드 라이선스
- jvm이란
- rxjava cold observable
- 2022 플러터 설치
- 2022 플러터 안드로이드 스튜디오
- 클래스
- 안드로이드 유닛테스트란
- 서비스 쓰레드 차이
- 안드로이드 유닛 테스트 예시
- Rxjava Observable
- 자바 다형성
- ar vr 차이
- 큐 자바 코드
- rxjava hot observable
- jvm 작동 원리
- 스택 큐 차이
- android ar 개발
- 안드로이드 os 구조
- 안드로이드 레트로핏 사용법
- 서비스 vs 쓰레드
- 안드로이드 라이선스 종류
- 멤버변수
- Today
- Total
목록2024/03/24 (6)
나만을 위한 블로그

copyOfRange()를 쓰면 비교적 간단하게 풀 수 있다. class Solution { fun solution(arr: IntArray, query: IntArray): IntArray { var result = arr for (i in query.indices) { result = if (i % 2 == 0) { result.copyOfRange(0, query[i] + 1) } else { result.copyOfRange(query[i], result.size) } } return result } }

정수 배열 arr이 주어진다. 배열 안의 2가 모두 포함된 가장 작은 연속된 부분 배열을 리턴하는 함수를 완성하라. arr에 2가 없으면 -1을 리턴한다 2가 있는 첫 인덱스, 마지막 인덱스를 구하고 첫 2부터 마지막 2까지의 숫자들을 리턴하도록 작성해서 풀었다. class Solution { fun solution(arr: IntArray): IntArray { val first = arr.indexOfFirst { it == 2 } val last = arr.indexOfLast { it == 2 } return if (first != -1 && last != -1) { if (arr.slice(first..last).isEmpty()) { intArrayOf(-1) } else { arr.slice..

풀지 못해서 다른 사람의 풀이를 참고했다. class Solution { fun solution(arr: IntArray, intervals: Array): IntArray { val intList = ArrayList() for (i in intervals.indices) { for (j in intervals[i][0]..intervals[i][1]) { intList.add(arr[j]) } } return intList.stream().mapToInt { x: Int? -> x!! }.toArray() } }

정수 리스트 num_list가 주어질 때, 첫 번째로 나오는 음수의 인덱스를 리턴하는 solution 함수를 완성하라. 음수가 없다면 -1을 리턴한다 정수 리스트 안에서 음수를 찾아야 하기 때문에 find를 쓰고 조건을 0보다 작은 것으로 설정할 수 있다. 또한 음수가 없다면 -1을 리턴해야 하기 때문에 아래와 같이 작성할 수 있다. class Solution { fun solution(numList: IntArray): Int { return if (numList.find { it < 0 } != null) { numList.indexOf(numList.find { it < 0 }!!) } else { -1 } } }

n이 1~4인 경우를 when으로 구분해서 풀면 아래와 같다. class Solution { fun solution(n: Int, slicer: IntArray, num_list: IntArray): IntArray { val a = slicer[0] val b = slicer[1] val c = slicer[2] val answer: IntArray when (n) { 1 -> { answer = IntArray(b + 1) for (i in 0..b) { answer[i] = num_list[i] } } 2 -> { answer = IntArray(num_list.size - a) for (i in a until num_list.size) { answer[i - a] = num_list[i] } } ..
코루틴끼리의 통신을 위한 기본적 방법으로 채널 api가 추가됐다. 채널은 송신자, 수신자 수에 제한이 없고 채널로 전송된 모든 값은 단 한 번만 받을 수 있다. 채널은 서로 다른 2개의 인터페이스를 구현한 하나의 인터페이스다. SendChannel : 원소를 보내거나 더하거나 채널을 닫기 위해 사용 ReceiveChannel : 원소를 받거나 꺼낼 때 사용 public interface SendChannel { public suspend fun send(element: E) public fun close(cause: Throwable? = null): Boolean } public interface ReceiveChannel { public suspend fun receive(): E public fun..