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

직사각형 형태의 그림 파일이 있고 이 파일은 1x1 크기의 정사각형 픽셀로 이뤄져 있다. 이 파일을 나타낸 문자열 배열 picture, 정수 k가 매개변수로 주어질 때, 이 파일을 가로와 세로로 k배 늘린 파일을 나타내도록 문자열 배열을 리턴하는 함수를 완성하라 풀이법이 떠오르지 않아서 챗지피티에 확인해 봤다. class Solution { fun solution(picture: Array, k: Int): Array { val result = mutableListOf() for (row in picture) { val expandedRow = row.flatMap { char -> List(k) { char } }.joinToString("") ..

아메리카노, 카페라떼만 파는 카페에서 커피를 사려고 한다. 아메리카노, 카페라떼 가격은 아이스, 핫 상관없이 각각 4500, 5000원이다. 메뉴만 적은 팀원은 아이스로 통일하고 '아무거나'를 적은 팀원은 아이스 아메리카노로 통일한다. 각 직원이 적은 메뉴가 문자열 배열 order로 주어질 때 결제할 금액을 리턴하는 함수를 완성하라. order의 원소는 아래의 것들만 들어오고 각 의미는 다음과 같다 먼저 아메리카노, 카페라떼, anything을 모두 구분하면서 가격을 계산한다면 아래와 같이 풀 수 있다. class Solution { fun solution(order: Array): Int { var answer = 0 order.forEach { menu -> ..

정수 배열 date1, date2가 주어진다. 두 배열은 각각 날짜를 나타내며 [year, month, day] 꼴로 주어진다. 각 배열에서 year는 연도, month는 월, day는 날짜를 나타낸다. date1이 date2보다 앞서는 날짜면 1, 아니면 0을 리턴하는 함수를 완성하라 배열 별 인덱스들끼리 크기를 비교해서 1, 0을 리턴시키면 된다. class Solution { fun solution(date1: IntArray, date2: IntArray): Int { return when { date1[0] 1 date1[0] > date2[0] -> 0 date1[1] 1 date1[1] > ..

조건에 따라서 계산식을 작성하면 된다.절대값을 구하는 abs()를 사용하려면 import문이 필요하니 주의한다. class Solution { fun solution(a: Int, b: Int): Int { return when { a % 2 != 0 && b % 2 != 0 -> a * a + b * b (a % 2 != 0 || b % 2 != 0) -> 2 * (a + b) else -> kotlin.math.abs(a - b) } }}

정수 리스트 num_list, 찾으려는 정수 n이 주어질 때 num_list 안에 n이 있으면 1, 없으면 0을 리턴하는 함수를 완성하라 in을 써서 n이 리스트 안에 있는지 확인해서 1, 0 중 하나를 리턴시키면 된다. class Solution { fun solution(numList: IntArray, n: Int): Int { return if (n in numList) 1 else 0 }}

ex를 포함한 문자열을 빼고 나머지 문자열들을 이어붙이면 끝이다.StringBuilder를 써서 풀면 아래와 같다. class Solution { fun solution(strList: Array, ex: String): String { val sb = StringBuilder() return sb.append(strList.filter { !it.contains(ex) } .joinToString("") ).toString() }} StringBuilder를 쓰지 않는다면 아래와 같이 된다. class Solution { fun solution(strList: Array, ex: String) = strList.filter { !..

"abc"는 "aabcc"의 부분 문자열이다. 문자열 str1, str2가 주어질 때 str1이 str2의 부분 문자열이면 1, 아니면 0을 리턴하는 함수를 완성하라 contains()를 써서 포함되는지 여부에 따라 다른 숫자를 리턴시키면 끝이다. class Solution { fun solution(str1: String, str2: String): Int = if (str2.contains(str1)) 1 else 0}

MVVM 패턴 이후 MVI라는 새 패턴이 등장했다. MVI 패턴을 다룬 글은 2019년에도 있어서 등장한지 꽤 오래됐다고 생각된다.각설하고 MVI 패턴은 무엇인지 먼저 확인한다. https://medium.com/@mohammedkhudair57/mvi-architecture-pattern-in-android-0046bf9b8a2e MVI Architecture Pattern in AndroidA guide to adopt MVI pattern in your projectmedium.comMVI(모델-뷰-인텐트) 아키텍처는 앱을 3가지 주요 컴포넌트로 나눠서 깔끔한 코드, 명확한 관심사 분리를 강조한다. 이런 단방향 데이터 흐름과 뚜렷한 역할은 앱을 더 쉽게 이해하고 빌드, 유지보수하는 데 기여한다. 또..

target을 포함하면 1, 아니면 0을 리턴하면 된다. class Solution { fun solution(my_string: String, target: String): Int = if (my_string.contains(target)) 1 else 0}

정수 배열 arr, delete_list가 있을 때 arr의 원소 중 delete_list의 원소를 모두 삭제하고 남은 원소들은 기존의 arr에 있던 순서를 유지한 배열을 리턴하는 함수를 완성하라 간단하게 풀면 아래와 같이 풀 수 있다. class Solution { fun solution(arr: IntArray, deleteList: IntArray) = arr.toList() - deleteList.toSet()} 컬렉션 함수를 쓰는 방법도 있다. class Solution { fun solution(arr: IntArray, delete_list: IntArray): IntArray = arr.map { arr.filter { !delete_list.contains(it)..