전체 글(355)
-
[프로그래머스/Kotlin]Lv2 - 과제 제출하기
Lv2 - 과제 제출하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해석 과제를 받은 루는 다음과 같은 순서대로 과제를 하려고 계획을 세웠습니다. - 과제는 시작하기로 한 시각이 되면 시작합니다. - 새로운 과제를 시작할 시각이 되었을 때, 기존에 진행 중이던 과제가 있다면 진행 중이던 과제를 멈추고 새로운 과제를 시작합니다. - 진행중이던 과제를 끝냈을 때, 잠시 멈춘 과제가 있다면, 멈춰둔 과제를 이어서 진행합니다. - 만약, 과제를 끝낸 시각에 새로 시작해야 되는 과제와 잠시 멈춰둔 과제가 모두 있다면, 새로 시작해야 하는 과제부터 진행합니..
2024.04.13 -
[LeetCode/Kotlin]Easy - 278. First Bad Version
Easy - 278. First Bad Version 문제 해석 총 물건의 개수 n을 입력받는다. 그 중 불량품의 첫 시작을 찾아내는 문제이다. 만약 1~7번까지의 상품이 있는데, 3번이 불량인 경우 3번부터는 모두 불량품이 된다. 문제에서는 input이 n과 bad 두가지 값이라고 나오지만 n만 입력받는다 생각하고 풀면 된다. 풀이 방법 풀이 접근 과정 그냥 이진탐색으로 풀면 된다고 생각했다. 아예 예시에서 이진탐색으로 풀도록 알려줘서 접근 자체는 쉬웠다. 최종 소스코드 /* The isBadVersion API is defined in the parent class VersionControl. fun isBadVersion(version: Int) : Boolean {} */ class Solutio..
2024.04.12 -
[프로그래머스/Kotlin]Lv2 - 마법의 엘리베이터
Lv2 - 마법의 엘리베이터 (Kotlin) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해석 +1 , +10, +100 … -1, -10, -100 … 의 버튼만 이용하여 최소한의 횟수로 원하는 층수에 도달하여야 한다. 예를 들어 현재 층이 60층이라면 최소한의 버튼만 눌러 0층에 도달하는 것이 목표 !! 시작 층을 기준으로 0층을 갈 수 있는 가장 최소한의 버튼 클릭 수를 구하는 문제이다. 풀이 방법 풀이 접근 과정 5를 기준으로 더 작은 경우에는 +1을 눌러서 가고, 더 큰 경우에는 +10에서 -를 해서 가도록 하는 것이 가장 최소한의 방법이..
2024.03.21 -
[LeetCode]Medium - 238. Product of Array Except Self
Medium - 238. Product of Array Except Self https://leetcode.com/problems/product-of-array-except-self/description/ 문제 해석 반복문을 한번만 돌려 나를 제외한 모든 값들의 곱을 구해야 한다. 대신! 나누기 연산을 사용하지 않을 것! 풀이 방법 풀이 접근 과정 인터넷 힌트 참고함. 자신을 기준으로 왼쪽값들의 곱을 구하고 자신을 기준으로 오른쪽값들의 곱을 구해 그 곱을 다시 곱하면 된다. 최종 소스코드 class Solution { fun productExceptSelf(nums: IntArray): IntArray { val answer = IntArray(nums.size) { 1 } for (i in 1 unti..
2024.03.21 -
[LeetCode/Kotlin]442. Find All Duplicates in an Array
LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 해석 배열 안에서 중복된 값만 뽑아내야 한다. 하지만 조건에 O(N)을 사용하라고 하였으므로 반복문은 한번만 돌아야 함. 그리고 추가 공간만 사용해야 한다는 사실을 명심하자 !! 풀이 방법 풀이 접근 과정 반복문을 한 번만 돌기 위해 map을 사용하여 중복된 값을 걸러내고자 하였다. 최종 소스코드 class..
2024.02.14 -
[LeetCode/Kotlin]Medium - 6. Zigzag Conversation
Zigzag Conversion - LeetCode Can you solve this real interview question? Zigzag Conversion - The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H N A P L S I I leetcode.com 문제 The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: ..
2023.11.02