[Kotlin / 코딩테스트] 프로그래머스 - 카펫
·
알고리즘 & 코딩 테스트/Kotlin으로 푼 코딩 테스트
1. 문제 2. 생각대로 풀이 수학적으로 어떠한 공식이 나올꺼 같았다. 해보니 몇가지 공식이 나왔다 노란색 가로의 길이 = X, 세로의 길이 = Y 라고 할 때, xy = yellow 2(x+y)+4 = brown (x+2)*(y+2) = yellow + brown x와 y는 양의 정수이다. 3가지 공식을 반복문을 돌려서 찾았다. class Solution { fun solution(brown: Int, yellow: Int): IntArray { var x = 1 while(true) { if(2*x +(2*yellow)/x==brown-4) { if((yellow/x+2)*(x+2) == brown + yellow) { break; } } x++ } return intArrayOf(yellow/x+2..
[Kotlin / 코딩테스트] 프로그래머스 - 가운데 글자 가져오기
·
알고리즘 & 코딩 테스트/Kotlin으로 푼 코딩 테스트
1. 문제 2. 코드 2-1. 풀이 1 class Solution { fun solution(s: String): String { val sList = s.split("") if (sList.size % 2 == 0) { return sList[sList.size/2-1] + sList[sList.size/2] } else { return sList[sList.size/2] } } } 2-2. 풀이 2 class Solution { fun solution(s: String): String { val middleIndex = s.length / 2 return if (s.length % 2 == 0) { s.substring(middleIndex - 1, middleIndex + 1) } else { s...
[Kotlin / 코딩테스트] 프로그래머스 - 두 개 뽑아서 더하기
·
알고리즘 & 코딩 테스트/Kotlin으로 푼 코딩 테스트
1. 문제 2. 코드 2-1. 첫번째 코드 class Solution { fun solution(numbers: IntArray): IntArray { val result: MutableList = mutableListOf() numbers.indices.forEach { i -> numbers.indices.forEach { j -> if (i != j) { result.add(numbers[i] + numbers[j]) } } } return result.distinct().sorted().toIntArray() } } numbers의 indices로 인덱스 참고 이중 for문에 i != j 일때 더해서 저장 distinct로 중복제거, sorted로 정렬 2-2. 두번째 코드 class Soluti..
마볼링
'알고리즘 & 코딩 테스트/Kotlin으로 푼 코딩 테스트' 카테고리의 글 목록