백준 알고리즘
-
[백준 알고리즘/Kotlin] 2738번 행렬 덧셈 (feat. 2차원 배열)IT Study/백준 알고리즘 2023. 12. 31. 12:03
안녕하세요, 오늘은 2차원 배열을 다루는 방법에 대해 알아보도록 하겠습니다. 먼저, 최종 코드를 살펴봅시다. 최종 코드 fun main() = System.`in`.bufferedReader().use { br -> val (n, m) = br.readLine().split(" ").map { it.toInt() } val array = Array(n) { IntArray(m) } for (i in 0 until n) { array[i] = br.readLine().split(" ").map { it.toInt() }.toIntArray() } for (i in 0 until n) { val row = br.readLine().split(" ").map { it.toInt() } for (j in 0 u..
-
[백준 알고리즘/Kotlin] 2588번 곱셈 (feat. toString() 이후 toInt() 사용)IT Study/백준 알고리즘 2023. 12. 26. 16:03
1. 최종 코드 fun main() = System.`in`.bufferedReader().use { br -> val n = br.readLine().toInt() var m = br.readLine() for (i in 2 downTo 0) { val result = n * m[i].toString().toInt() println(result) } print(n * m.toInt()) } 코드를 분석해 보도록 하죠. 아주 단순하지만, 유심히 봐야 할 곳이 있습니다. 2. 코드 살펴보기 for (i in 2 downTo 0) { val result = n * m[i].toString().toInt() println(result) } 2-1. downTo downTo는 Kotlin에서 제공하는 범위 연산..
-
[백준 알고리즘/Kotlin] 1202번 보석 도둑 (feat. mutableListOf, PriorityQueue)IT Study/백준 알고리즘 2023. 12. 25. 15:47
문제는 생각보다 심플한 듯하였습니다. 그래서 아래와 같은 로직을 세우고, 이대로 코드를 작성해야겠다고 생각했습니다. 1. 용량이 작은 가방부터 꺼낸다. (꺼냄과 동시에 자료형에서 제거해야 한다.) 2. 꺼낸 가방의 용량보다 작거나 같은 보석 중 가장 가격이 높은 보석을 꺼낸다. (꺼냄과 동시에 자료형에서 제거해야 한다.) 3. 해당하는 보석의 가격을 확인하여 result에 + 한다. 4. 더이상더 이상 꺼낼 가방이 없을 때 종료 (혹은 더 이상 꺼낼 주얼리가 없을 때 종료) 1. 시간 초과된 코드 import java.io.BufferedReader import java.io.InputStreamReader import java.util.PriorityQueue fun main() { val br = B..
-
[백준 알고리즘/JavaScript] 1000번 A + B (Feat. 입력받기)IT Study/백준 알고리즘 2023. 12. 14. 13:01
처음으로 JavaScript로 백준을 풀이하기에 앞서, 입력받는 것부터 확인해 보도록 하죠. 1. 하나의 값 입력받기 // ex) 2 (하나의 값을 입력받을 때) const fs = require('fs'); const input = fs.readFileSync("/dev/stdin").toString().trim(); 2. 여러 값 입력받기 2-1. 한 줄에 공백으로 구분된 여러 값을 입력받기 // ex) 10 21 3 (한 줄에 공백으로 구분된 여러 값을 입력받을 때) const fs = require('fs'); const input = fs.readFileSync("/dev/stdin").toString().trim().split(" "); 2-2. 여러 줄에 줄 바꿈으로 구분된 여러 값을 입력받..