Kotlin 126

[Kotlin] Programmers 코딩 기초 트레이닝 Day 10 문자열

문자열 앞의 n글자 class Solution { fun solution(my_string: String, n: Int): String = my_string.slice(0 until n) } 접두사인지 확인하기 class Solution { fun solution(my_string: String, is_prefix: String): Int = if(my_string.startsWith(is_prefix)) 1 else 0 } 문자열 뒤집기 class Solution { fun solution(my_string: String, s: Int, e: Int): String = my_string.replace(my_string.slice(s .. e), my_string.slice(s .. e).reversed..

[Kotlin] Programmers 코딩 기초 트레이닝 Day 09 문자열

배열 만들기 5 class Solution { fun solution(intStrs: Array, k: Int, s: Int, l: Int): IntArray { var answer: IntArray = intArrayOf() intStrs.forEach { var temp = it.slice(s until s + l).toInt() println(temp) if (k < temp) answer = answer.plus(temp) } return answer } } 부분 문자열 이어 붙여 문자열 만들기 class Solution { fun solution(my_strings: Array, parts: Array): String{ var answer = "" for (i in 0 until my_strin..

[Jetpack Compose] Slot API

Slot API 이름을 보면 알 수 있는 것 처럼 뭔갈 넣을 수 있도록 만드는 것이다. 즉 재사용성이 좋도록 함수를 설계하는 것이다. 말만 들어서는 기존의 재사용성 높은 함수와 다를바가 없어 보일 것이다. 자세하게 정리하며 설명 들어가보자. 목적 일단 이걸 왜 써야할까? 앞서 말했던것 처럼 재사용성이다. 극한의 재사용성이 목표다. 하나의 큰 틀을 만들고, 그 틀을 세부적으로 활용하며 사용하기 위해서 Slot API를 사용한다. 아래 사용법을 보면서 공부해보자. 사용법 기존의 코드를 먼저 보자. @Composable fun ButtonFun(){ var count = remember { mutableStateOf(0) } Row( verticalAlignment = Alignment.CenterVerti..

Android App 개발기 feat. 이집내집

Jetpack Compose 관련해서 한동안 글을 못썼다. 내가 글을 쓴 텀을 보면 대충 예상이 가겠지만 난 지금 대학생이다. 그래서 학기중엔 현생에 치여 살고... 방학에나 공부하는걸 정리하는 블로그다보니 한학기동안 글을 거의 못썼다. 그렇다고 Jetpack Compose를 공부를 하나도 안했냐 하면? 절대 아니지 ㅋㅋ 놀랍게도 지금까지 공부한걸 써먹기도 하고, 공부하며 어플을... 하나... 만들었다. 우리학교에선 "심화 캡스톤"이라는 이름의 작업물 만드는 수업이 있다. 이건 4학년 1학기에 듣는 일종의 졸작 같은 개념이다. 그래서 이걸 연습이라고 해야할까 여튼 3학년 1학기에도 하는 수업이 "기초캡스톤"이다. 그래서 팀을 짜고 열심히 개발하느라고 블로그를 정리할 시간이 없었다. 그래도 결과물은 잘 ..

[Kotlin] Programmers 코딩 기초 트레이닝 Day 08 조건문, 문자열

간단한 논리 연산 class Solution { fun solution(x1: Boolean, x2: Boolean, x3: Boolean, x4: Boolean): Boolean = (x1 || x2) && (x3 || x4) } 주사위 게임 3 import java.lang.Math.abs class Solution { fun solution(a: Int, b: Int, c: Int, d: Int): Int { var temp: Set = setOf(a,b,c,d) var arr = arrayOf(a,b,c,d) return when(temp.size){ 1 -> 1111 * temp.first() 2 -> { var first = temp.first() var last = temp.last() if..

[Kotlin] Programmers 코딩 기초 트레이닝 Day 07 반복문

수열과 구간 쿼리 4 class Solution { fun solution(arr: IntArray, queries: Array): IntArray { var answer: IntArray = arr queries.forEach { for(i in it[0] .. it[1]){ if (i % it[2] == 0) answer[i]++ } } return answer } } 배열 만들기 2 class Solution { fun solution(l: Int, r: Int): IntArray { var answer: IntArray = intArrayOf() for (i in l .. r){ var temp = i.toString().toSet() if ((temp.size == 2 && temp.contai..

[Kotlin] Programmers 코딩 기초 트레이닝 Day 06 조건문, 반복문

마지막 두 원소 class Solution { fun solution(num_list: IntArray): IntArray = num_list.plus(if (num_list.last() > num_list[num_list.size - 2]) num_list.last() - num_list[num_list.size - 2] else num_list.last() * 2) } 수 조작하기 1 class Solution { fun solution(n: Int, control: String): Int { var answer: Int = n control.forEach { when(it){ 'w' -> answer += 1 's' -> answer -= 1 'd' -> answer += 10 'a' -> answ..

카테고리 없음 2023.07.04

[Kotlin] Programmers 코딩 기초 트레이닝 Day 05 조건문

코드 처리하기 class Solution { fun solution(code: String): String { var answer: String = "" var mode = true // mode == 0 for (i in 0 until code.length){ if (mode){ if (code[i] == '1') mode = !mode else{ if (i % 2 == 0) answer += code[i] } }else{ if (code[i] == '1') mode = !mode else{ if (i % 2 == 1) answer += code[i] } } } return if (answer != "") answer else "EMPTY" } } 등차수열의 특정한 항만 더하기 class Solutio..

[Kotlin] Programmers 코딩 기초 트레이닝 Day 04 연산, 조건문

n의 배수 class Solution { fun solution(num: Int, n: Int): Int = if (num % n == 0) 1 else 0 } 공배수 class Solution { fun solution(number: Int, n: Int, m: Int): Int = if (number % n == 0 && number % m == 0) 1 else 0 } 홀짝에 따라 다른 값 반환하기 import kotlin.math.pow class Solution { fun solution(n: Int): Int = (2 - (n % 2) .. n step 2).sumOf { (it.toFloat()).pow(2 - (n % 2)).toInt() } } 조건 문자열 class Solution { ..

[Kotlin] Programmers 코딩 기초 트레이닝 Day 03 연산

문자열 섞기 class Solution { fun solution(str1: String, str2: String): String { var answer: String = "" for (i in 0 until str1.length){ answer += str1[i] answer += str2[i] } return answer } } 문자 리스트를 문자열로 변환하기 class Solution { fun solution(arr: Array): String = arr.joinToString("") } 문자열 곱하기 class Solution { fun solution(my_string: String, k: Int): String = my_string.repeat(k) } 더 크게 합치기 import kotli..