본문 바로가기
반응형

Kotlin20

[알고리즘 / Kotlin] 프로그래머스 - (8주차)최소직사각형 최소직사각형 문제 설명 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑 크기는 4000(=80 x 50)입니다. 모든 명함의 가로 길이와 세.. 2021. 10. 1.
[Android] Intent로 데이터 전달 시 용량 제한 어느 날, 오후 급하게 회사 메신저로 CS 측에서 문의가 왔습니다. 앱에서 특정 매장의 메뉴를 선택하는 과정에서 앱이 뻗어버린다는 것이었습니다. 처음에 디버그도 찍어보고 관리자 페이지의 데이터를 대조하면서 확인해도 뚜렷한 오류 로그가 나오지 않아서 굉장히 난감했습니다. 헤매다가 결국 찾았는데 바로 인텐트에 담아서 보내는 데이터의 사이즈가 문제였습니다. 찾아보니 인텐트에 데이터를 담을 때, 대략 500KB 정도가 넘어가면 앱이 Crash가 날 수 있다고 합니다. 확인해보니 상품들의 옵션들이 계속 추가되면서 넘길 수 있는 데이터의 한계를 넘어선 듯했습니다. 해결 방법을 찾아보니 Intent를 사용할 때 기본적인 정보만을 담고 더 많은 데이터를 Intent에 담아야 한다면 다음과 같은 방법을 고려해보라고 했습.. 2021. 9. 16.
[알고리즘 / Kotlin] 프로그래머스 - 다리를 지나는 트럭 다리를 지나는 트럭 문제 설명 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 수 있으며, 다리는 weight 이하까지의 무게를 견딜 수 있습니다. 단, 다리에 완전히 오르지 않은 트럭의 무게는 무시합니다. 예를 들어, 트럭 2대가 올라갈 수 있고 무게를 10kg까지 견디는 다리가 있습니다. 무게가 [7, 4, 5, 6] kg인 트럭이 순서대로 최단 시간 안에 다리를 건너려면 다음과 같이 건너야 합니다. 따라서, 모든 트럭이 다리를 지나려면 최소 8초가 걸립니다. solution 함수의 매개변수로 다리에 올라갈 수 있는 트럭 수 bridge_length.. 2021. 9. 15.
[알고리즘 / Kotlin] 프로그래머스 - 위장(해시) 위장 문제 설명 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재하지 않습니다. clothes의 모든 원소는 문자열로 이루어져 있습니다. 모든 문자열의 길이는 1 이상 20 이.. 2021. 9. 3.
[Kotlin] (번역, 요약) Clean Code with Kotlin 해당 글은 https://magdamiu.com/2021/08/23/clean-code-with-kotlin-2/ 를 요약과 개인적인 생각이 들어있습니다. (잘못된 부분이나 내용 개선에 관해서 피드백 환영합니다.) 이번 글에서는 우리는 Clean Code는 무엇인지 요약하고 의미 있는 이름을 정의하는 것의 중요성과 깨끗한 함수와 클래스를 작성하는 방법을 강조할 것입니다. 그리고 아래와 같은 3가지에 대해 자세히 알아볼 겁니다. immutablility의 장점 Kotlin의 오류 처리 방법 테스트 작성의 모범 사례 이 글이 끝나면 Clean Code가 무엇을 의미하는지 더 잘 이해하고 코드에 적용할 수 있는 팁과 트릭을 배우게 될 것입니다. What is Clean Code? 클린 코드는 읽을 수 있고 이.. 2021. 9. 1.
[Kotlin] Kotlin Collection 관련 유용한 함수 Android 개발을 하다 보면 필연적으로 collection이라는 자료구조를 많이 사용하게 됩니다. collection의 종류로는 List , Map, Set 이 있습니다. Kotlin의 Collection은 기본적으로 Mutable과 Immutable을 별개로 지원합니다. Mutable : 생성하면 추가, 삭제가 가능 Immutable : 생성하면 수정 불가 오늘은 이 collection에서 사용할 수 있는 유용한 함수들에 대해 정리해보려고 합니다. 🟩 sort collection의 각 요소들을 정렬해줍니다. fun main(args: Array) { val a: MutableList = mutableListOf(3, 2, 1) a.sort() //a.sorted() 는 새로운 collection을 .. 2021. 8. 28.
반응형

loading