일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- Poll
- programmers
- 2D Array
- Recursion
- solution
- contentToString
- sortedBy
- GREEDY
- Developer
- intarray
- Main
- heap
- hackerrank
- 동적계획법
- PriorityQueue
- indices
- report
- Kotlin
- 프로그래머스
- 코틀린
- dynamic programming
- booleanarray
- dp
- 2020
- lastIndex
- foreach
- 알고리즘
- Queue
- Util
- Java
- Today
- Total
목록Kotlin (22)
Code in

프로그래머스 탐욕법(Greedy) 부분 체육복 문제입니다. IntelliJ에서의 풀이입니다. val n: Int = 5 // 2 ~ 30 val lost: IntArray = intArrayOf(2, 4) // size 1 ~ n val reserve: IntArray = intArrayOf(1, 3, 5) // size 1 ~ n fun solution(n: Int, lost: IntArray, reserve: IntArray): Int { var answer = 0 var current: IntArray = IntArray(n+2){1} // 번호는 1부터 시작 끝 1개는 error 방지 lost.forEach { current[it]-- } reserve.forEach { current[it]++ ..

프로그래머스 완전 탐색 부분 카펫 문제입니다. IntelliJ에서의 풀이입니다. val brown: Int = 24 // 최소 8 val yellow: Int = 24 // 최소 1 fun solution(brown: Int, yellow: Int): IntArray { var answer = intArrayOf() // brown = 2*(가로+세로 - 2) yellow = 가로*세로 - brown // (가로+세로) = brown/2 + 2 // 가로*세로 = brown + yellow val mul: Int = brown + yellow val sum: Int = brown / 2 + 2 // 가로 = mul/세로 // 가로+세로 = sum var height = 3 // 최솟값 while (mul..

프로그래머스 완전 탐색 부분 소수 찾기 문제입니다. IntelliJ에서의 풀이입니다. isPrime 참고: https://www.geeksforgeeks.org/sieve-of-eratosthenes/ Sieve of Eratosthenes - GeeksforGeeks Sieve of Eratosthenes - The sieve of Eratosthenes is one of the efficient ways to find all primes smaller than given n www.geeksforgeeks.org import kotlin.math.log10 import kotlin.math.pow val numbers: String = "011" fun solution(numbers: String):..

프로그래머스 완전탐색 부분 모의고사 문제입니다. IntelliJ에서의 문제 풀이입니다. val operations: IntArray = intArrayOf(1, 3, 2, 4, 2) fun solution(answers: IntArray): IntArray { var answer = intArrayOf() var a: Int = 0 // 맞은 개수 count var b: Int = 0 var c: Int = 0 val aa: IntArray = intArrayOf(1, 2, 3, 4, 5) // 답안지 val bb: IntArray = intArrayOf(2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5) val cc: IntArray = intArrayOf(3, 3, ..

프로그래머스의 힙 부분 이중우선순위큐 문제입니다. IntelliJ에서의 풀이입니다. import java.util.PriorityQueue // Kotlin은 JVM: Java Virtual Machine 을 사용하기 때문에 Java에서 import합니다. val operations: Array = arrayOf("I 7", "I 5", "I -5", "D -1") // "I 7", "I 5", "I -5", "D -1" // 7, 5 // "I 16", "D 1" // 0, 0 fun solution(operations: Array): IntArray { var answer = intArrayOf() val minHeap = PriorityQueue() // min Heap 생성 val maxHeap ..

프로그래머스 힙 부분 디스크 컨트롤러 문제입니다. IntelliJ에서의 문제풀이입니다. import java.util.PriorityQueue // Kotlin은 JVM: Java Virtual Machine 을 사용하기 때문에 Java에서 import합니다. val jobs: Array = arrayOf(intArrayOf(0, 3), intArrayOf(1, 9), intArrayOf(500, 6)) fun solution(jobs: Array): Int { var answer = 0 var timer = 0 // 현재 시간 // 0은 요청 시간, 1은 소요 시간 val waitminHeap = PriorityQueue(compareBy({it[0]}, {it[1]})) // wait 에서는 요청 시..

프로그래머스 큐, 프린터 문제입니다. IntelliJ에서의 풀이입니다. import java.util.Queue import java.util.LinkedList // Kotlin은 JVM: Java Virtual Machine 을 사용하기 때문에 Java의 Queue를 import합니다. var location: Int = 2 val priorities: IntArray = intArrayOf(2, 1, 3, 2) fun solution(priorities: IntArray, location: Int): Int { var answer = 0 data class print(val value: Int, val ff: Boolean) // data class 를 사용하여 print라는 데이터 형식을 선언합니..

프로그래머스 큐, 다리를 지나는 트럭 문제입니다. 큐는 add 하는 곳과 poll(remove)하는 곳이 다르다는 것을 유의해야 했습니다... IntelliJ에서의 문제 풀이입니다. import java.util.Queue import java.util.LinkedList // Kotlin은 JVM: Java Virtual Machine 을 사용하기 때문에 Java의 Queue를 import합니다. var bridge_length:Int = 2 var weight: Int = 10 var truck_weights: IntArray = intArrayOf(7, 4, 5, 6) fun solution(bridge_length: Int, weight: Int, truck_weights: IntArray): I..

프로그래머스 큐 기능개발 문제입니다. IntelliJ에서의 문제 풀이입니다. var progresses: IntArray = intArrayOf(93,30,55) // 진도가 변하므로 var 사용 val speeds: IntArray = intArrayOf(1, 30, 5) // 속도가 일정하므로 val 사용 fun solution(progresses: IntArray, speeds: IntArray): IntArray { var answer = intArrayOf() // int Array 형식으로 초기화 var cnt = 100 // 가장 오래 걸리더라도 100일 이하 var front = 0 // 큐에서 Data가 사라지는 방향 var tmp: Int // Int 형식으로 선언 while (cnt ..

프로그래머스 정렬 부분 H-Index 문제이다. IntelliJ에서의 풀이이다. var citations: IntArray = intArrayOf(3, 0, 6, 1, 5) fun solution(citations: IntArray): Int { var answer = 0 val n = citations.size // 발표한 논문 n // val은 value, var은 variable이다. // val은 값 할당 후, 값을 변경할 수 없다. var는 변경 가능하다. citations.sortDescending() // 6, 5, 3, 1, 0 // 인용된 횟수 큰 순서=내림차 순 for(i in 0 until n) // i는 0 1 2 3 4 Index가 인용된 편 수 h 이다. if (citations..