본문 바로가기

코딩테스트 준비(kotlin)47

[kotlin] 크기가 작은 부분문자열 문제해결에 사용한 substring 함수   내가 작성한 코드  substring 함수를 사용하여 원하는 범위의 문자열을 추출한 후 p의 값과 비교함을 통해 조건에 만족할 경우 answer값을 증가시킴. fun solution(t: String, p: String): Int { var answer = 0 for (i in 0..t.length - p.length) { if (p >= t.substring(i, i + p.length)) { answer++ } } return answer}  다른 사람의 코드  fun solution(t: String, p: String): Int { return (0..t.length - p.l.. 2024. 5. 19.
[kotlin] 삼총사 나의 코드 fun solution(number: IntArray): Int { var size = number.size var count = 0 for (i in 0 until size ) { for (j in i+1 until size ) { for (k in j+1 until size) { if(number[i]+number[j]+number[k]==0){ count++ } } } } return count}세 수의 값을 비교하기 위해 3중 for문을 생성하였다. i는 number의 첫번째 수 부터, j는 i의 다음 수 부터.. 2024. 5. 16.
[kotlin] 최대공약수와 최소공배수 나의 풀이fun solution(n: Int, m: Int): IntArray { var answer = intArrayOf(0, 0) var a: Int = 0 var b: Int = 0 for (i in 1..n) { if (n % i == 0 && m % i == 0) { a = i } } answer[0] = a answer[1] = (n * m) / a return answer} 다른 풀이 - 유클리드 호제법(Euclidean Algorithm)유클리드 호제법(Euclidean Algorithm)은 두 정수의 최대공약수를 쉽게 알아내는 방법이다.  A와 B의 최대공약수 GCD(A,B)를 알아내는 유클리드 호제.. 2024. 5. 16.
[kotlin] 이상한 문자 만들기 //이상한 문자 만들기fun solution1234(s: String): String { var answer=s.split(" ").joinToString(" ") { it.mapIndexed { i, c -> when (i % 2) { 0 -> c.uppercase() // touppercase 없어짐? else -> c.lowercase() } }.joinToString("") } return answer} 2024. 5. 7.