728x90

Kotlin 30

[백준/Kotlin] 개미굴(14725)

🔗 문제 링크백준 - 자료 구조 | 개미굴(14725)https://www.acmicpc.net/problem/14725... (중략) ...행복의 비결이 개미가 사는 개미굴에 있다고 생각한 윤수는 개미굴의 구조를 알아보기 위해 로봇 개미를 만들었다.로봇 개미는 센서가 있어 개미굴의 각 층에 먹이가 있는 방을 따라 내려가다 더 이상 내려갈 수 없으면 그 자리에서 움직이지 않고 신호를 보낸다.이 신호로 로봇 개미는 개미굴 각 층을 따라 내려오면서 알게 된 각 방에 저장된 먹이 정보를 윤수한테 알려줄 수 있다.로봇 개미 개발을 완료한 윤수는 개미굴 탐사를 앞두고 로봇 개미를 테스트 해보기 위해 위 그림의 개미굴에 로봇 개미를 투입했다. 로봇 개미의 수는 각 개미굴의 저장소를 모두 확인할 수 있을 만큼 넣는..

Programming/Kotlin 2024.08.01

[백준/Kotlin] 휴게소 세우기(1477)

🔗 문제 링크백준 - 이분 탐색 | 휴게소 세우기(1477)https://www.acmicpc.net/problem/1477다솜이는 유료 고속도로를 가지고 있다. 다솜이는 현재 고속도로에 휴게소를 N개 가지고 있는데, 휴게소의 위치는 고속도로의 시작으로부터 얼만큼 떨어져 있는지로 주어진다. 다솜이는 지금 휴게소를 M개 더 세우려고 한다.다솜이는 이미 휴게소가 있는 곳에 휴게소를 또 세울 수 없고, 고속도로의 끝에도 휴게소를 세울 수 없다. 휴게소는 정수 위치에만 세울 수 있다.다솜이는 이 고속도로를 이용할 때, 모든 휴게소를 방문한다. 다솜이는 휴게소를 M개 더 지어서 휴게소가 없는 구간의 길이의 최댓값을 최소로 하려고 한다. (반드시 M개를 모두 지어야 한다.)예를 들어, 고속도로의 길이가 1000이..

Programming/Kotlin 2024.07.24

[백준/Kotlin] 우주 탐사선(17182)

🔗 문제 링크https://www.acmicpc.net/problem/17182백준 - 백트래킹 | 우주 탐사선(17182)우주 탐사선 ana호는 어떤 행성계를 탐사하기 위해 발사된다. 모든 행성을 탐사하는데 걸리는 최소 시간을 계산하려 한다. 입력으로는 ana호가 탐색할 행성의 개수와 ana호가 발사되는 행성의 위치와 ana호가 행성 간 이동을 하는데 걸리는 시간이 2차원 행렬로 주어진다. 행성의 위치는 0부터 시작하여 0은 행렬에서 0번째 인덱스에 해당하는 행성을 의미한다. 2차원 행렬에서 i, j 번 요소는 i 번째 행성에서 j 번째 행성에 도달하는데 걸리는 시간을 나타낸다. i와 j가 같을 때는 항상 0이 주어진다. 모든 행성을 탐사하는데 걸리는 최소 시간을 계산하여라.탐사 후 다시 시작 행성으..

Programming/Kotlin 2024.07.22

[백준/Kotlin] 동전 바꿔주기(2624)

🔗 문제 링크백준 - 다이나믹 프로그래밍 | 동전 바꿔주기(2624)https://www.acmicpc.net/problem/2624명보네 동네 가게의 현금 출납기에는 k 가지 동전이 각각 n1, n2, … , nk개 씩 들어있다. 가게 주인은 명보에게 T원의 지폐를 동전으로 바꿔 주려고 한다. 이때, 동전 교환 방법은 여러 가지가 있을 수 있다. 예를 들어, 10원 짜리, 5원 짜리, 1원 짜리 동전이 각각 2개, 3개, 5개씩 있을 때, 20원 짜리 지폐를 다음과 같은 4가지 방법으로 교환할 수 있다.20 = 10×220 = 10×1 + 5×220 = 10×1 + 5×1 + 1×520 = 5×3 + 1×5입력으로 지폐의 금액 T, 동전의 가지 수 k, 각 동전 하나의 금액 pi와 개수 ni가 주어질..

Programming/Kotlin 2024.07.17

[Android/Kotlin] Image URL을 Bitmap으로 변환해서 보여주는 방법

라이브러리를 사용하지 않고 API에서 URL로 받은 이미지를 화면에 보여주려고 시도하다가 결국 라이브러리를 사용하게 된 사건을 기록하려고 한다,,, 처음에는 라이브러리를 사용하지 않기 위해 BitmapFactory로 이미지를 로드하는 코드를 구현했다. [ util module > ImageLoader ]import android.graphics.Bitmapimport android.graphics.BitmapFactoryobject ImageLoader { fun byteArrayToBitmap(byteArray: ByteArray): Bitmap { return BitmapFactory.decodeByteArray(byteArray, 0, byteArray.size) }} [ d..

Programming/Android 2024.06.28

[백준/Kotlin] 비즈 공예(1301)

문제https://www.acmicpc.net/problem/1301다솜이는 자신의 목걸이를 구슬을 이용해서 만들려고 한다. 다솜이는 구슬을 N종류 가지고 있다. 서로 다른 종류의 구슬은 색이 다르다. 다솜이는 구슬을 실에 껴서 목걸이를 만들려고 한다. 무작정 껴도 상관없겠지만, 워낙 미적감각이 뛰어난 다솜이는 임의의 연속된 3개의 구슬의 색을 모두 다르게 하려고 한다.예를 들어, 다솜이가 1번 구슬을 2개, 2번 구슬을 1개, 3번 구슬을 1개 가지고 있다고 하자. 1번 구슬이 초록, 2번 구슬이 파랑, 3번 구슬이 빨강이라고 하면, 연속된 3개의 구슬이 같은 색이면 안되기 때문에, 초록구슬을 반드시 목걸이의 끝에 있어야 한다. 따라서 다솜이가 목걸이를 만들 수 있는 방법의 경우의 수는 초록-빨강-파랑..

Programming/Kotlin 2024.06.26

[백준/Kotlin] 이모티콘(14226)

문제https://www.acmicpc.net/problem/14226영선이는 매우 기쁘기 때문에, 효빈이에게 스마일 이모티콘을 S개 보내려고 한다.영선이는 이미 화면에 이모티콘 1개를 입력했다. 이제, 다음과 같은 3가지 연산만 사용해서 이모티콘을 S개 만들어 보려고 한다.화면에 있는 이모티콘을 모두 복사해서 클립보드에 저장한다.클립보드에 있는 모든 이모티콘을 화면에 붙여넣기 한다.화면에 있는 이모티콘 중 하나를 삭제한다.모든 연산은 1초가 걸린다. 또, 클립보드에 이모티콘을 복사하면 이전에 클립보드에 있던 내용은 덮어쓰기가 된다. 클립보드가 비어있는 상태에는 붙여넣기를 할 수 없으며, 일부만 클립보드에 복사할 수는 없다. 또한, 클립보드에 있는 이모티콘 중 일부를 삭제할 수 없다. 화면에 이모티콘을 ..

Programming/Kotlin 2024.06.24

[LeetCode/Kotlin] 11. Container With Most Water

문제https://leetcode.com/problems/container-with-most-water/description/ 풀이부르트포스로 풀어보면 시간초과가 된다.가장 왼쪽, 오른쪽 기둥을 시작점으로 잡고, 더 짧은 쪽은 안쪽으로 한 칸씩 이동하면서 넓이를 구해준다.넓이를 구할 때마다 최대값을 저장import kotlin.math.maximport kotlin.math.minclass Solution { fun maxArea(height: IntArray): Int { var answer: Int = 0 // 가장 바깥쪽 기둥부터 탐색 var left = 0 var right = height.size - 1 while(left h..

Programming/Kotlin 2024.06.24

[Android] gradle > buildType에서 release와 debug 버전을 분리하는 경우

android { ... buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } ...} 보통 안드로이드 프로젝트를 생성해서 개발하면 build.gradle (:app) 파일에 위처럼 release 버전만 있게 된다. 그런데 운영앱과 개발앱이 따로 필요한 경우가 있기 때문에 debug 버전을 따로 두는 경우가 있다고 한다.✅ release와 debug 버전 분리하는 이유운영앱과 개발앱을 분리해서 사용해야 할 경우 ..

Programming/Android 2024.06.07
728x90