Kotlin

🔒 문제 💡 생각의 흐름 (1) 아, 유클리드 호제법 GCD (최대공약수) 함수 작성해서 최소공배수 바로 구해보리기 하면 되겠군. 최대공약수 공식 알고리즘은 요기서 최대공약수 알고리즘 Greatest Common Divisor Problem 임의의 자연수 n, m (단, n > m) 에 대한 최대공약수? Input 자연수 n, m Output Largest D s.t n % D and m % D == 0 s.t: Search That의 약자. [1] n-gcd 가장 생각하기 쉬운.. m-falcon.tistory.com (2) 오름 정렬해서 쪼꼬만 애들끼리 만든 최소공배수로 뒷놈들 다 검사해보는 식으로 해야겠군 🔑풀이 (Kotlin) class Solution { fun gcd (a: Int, b: In..
문제 실수 대놓고 서로 다른 '조합'의 수를 구하는 문구에서 기계적으로 Combination을 떠올렸다. 옷의 갯수 까지의 모든 Combination 조합을 합하면 답이 도출되지 않을까? 하고 생각했다. 예를 들어 위의 예제대로 하면 얼굴(2) - 상의(1) - 하의(1) - 겉옷(1) 5C1 + 5C2 - 1(얼굴 2개만 뽑는 경우의수 ) + 5C3 - 3 (얼굴 2개 + 나머지 1조합 경우의수) + 5C4 - 3 (얼굴 2개 + 2개 조합 경우의수) ------ 이런 식으로하니 일반식이 도출되지 않았다. 아이디어 조합의 수를 구하라 했지만 옷을 하나이상 걸친 모든 경우의 수를 구하는 문제였다. 각 옷의 종류마다 옷을 입는 경우의 수를 나눠서 표현하면 얼굴 -> 입지 않음 , 동그란 안경 , 검정 선글..
1. 문제 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr ⭐ 카카오 2019 블라인드 공개채용 기출문제 2. 실수 loop을 2번 중첩했다가 시간초과로 75점을 맞았다. loop 2중첩 시나리오는 다음과 같았다. 아이디 - 닉네임이 매핑되어야 한다는 사실로부터 (1) 중복을 제거한 아이디 목록 Set (집합) (2) Set element 수 == 회원수 만큼 loop (3) (2) loop 안에서 record 로그 수만큼 또 loop (2) + (3) => Time Complexity O(N^2) => 시간..
문제 아이디어 정점, 간선 단어를 보자마자 '그래프'? 연결 요소 == 이어진 그래프를 의미한다. BFS or DFS를 떠올린다. 나는 BFS를 선택했다. 모든 노드(정점) 목록을 원소로 갖는 집합(Set)을 두고 한 번의 BFS마다 생기는 그래프를 전체 집합에서 제외시키는 방식으로 풀이했다. (전체 집합이 공집합이 될 때까지 Loop) 실수 undirected graph (무방향 그래프) 인것을 확인하지 않고 단방향 연결 리스트로만 체크하다가 틀려버렸다. 구현 [Graph.kt] import java.util.* import kotlin.collections.ArrayList class Graph(private val vertexNumber: Int) { val vertexSet : Set = (1 ...
문제 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 해결 방법 (1) 키패드간 거리가 '직선'이 아니라 상하좌우로 제한됨 -> X,Y 좌표계 도입! (2) [1,4,7]-> L, [3,6,9] -> R 고정이고 [2,5,8,0] 만 거리 계산이 필요함. // 거리가 같다면 hand 값 따지기 (3) 입력값은 모두 '숫자'지만 초기 왼,오른손은 '*', '#' character -> 어차피 정수로 변..
· JVM/Kotlin
When to use? (클래스 단위) 배열 요소의 총합, 최대, 최소값을 구하려 할 때. Why? 이전까지는 For loop을 돌려서 총합을 구했음. selector 를 지정하여 간결하게 계산 가능. OrderItem.kt data class OrderItem(val itemName: String, var price : Int, var count : Int) { } main.kt (기존 방법) fun main(args: Array) { val orderArray = arrayOf(OrderItem("Cake", 15000, 3), OrderItem("Coffee", 1500, 10), OrderItem("Tea", 2000, 10)) var sum:Int = 0 for(i in orderArray) {..
M_Falcon
'Kotlin' 태그의 글 목록 (3 Page)