💻 Development 408

[프로그래머스/Programmers] 가장 큰 수

가장 큰 수 📌 문제 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. ⚠️ 제한사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 📋 코드 def solution(num..

[프로그래머스/Programmers] K번째수

K번째수 📌 문제 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. ⚠️ 제한사항 array의 길이는 1 이상 100 이..

[프로그래머스/Programmers] 디스크 컨트롤러

디스크 컨트롤러 📌 문제 하드디스크는 한 번에 하나의 작업만 수행할 수 있습니다. 디스크 컨트롤러를 구현하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 요청이 들어온 순서대로 처리하는 것입니다. 예를들어 - 0ms 시점에 3ms가 소요되는 A작업 요청 - 1ms 시점에 9ms가 소요되는 B작업 요청 - 2ms 시점에 6ms가 소요되는 C작업 요청 와 같은 요청이 들어왔습니다. 이를 그림으로 표현하면 아래와 같습니다. 한 번에 하나의 요청만을 수행할 수 있기 때문에 각각의 작업을 요청받은 순서대로 처리하면 다음과 같이 처리 됩니다. - A: 3ms 시점에 작업 완료 (요청에서 종료까지 : 3ms) - B: 1ms부터 대기하다가, 3ms 시점에 작업을 시작해서 12ms 시점에 작업 완료 - C: 2..

[프로그래머스/Programmers] 더 맵게

더 맵게 📌 문제 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같이 특별한 방법으로 섞어 새로운 음식을 만듭니다. 섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2) Leo는 모든 음식의 스코빌 지수가 K 이상이 될 때까지 반복하여 섞습니다. Leo가 가진 음식의 스코빌 지수를 담은 배열 scoville과 원하는 스코빌 지수 K가 주어질 때, 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 섞어야 하는 최소 횟수를 return 하도록 solution 함수를 작성해주세요. ⚠️ 제한사항 ..

[운영체제/OS] 프로세스

"KOCW - 반효경 교수님의 운영체제" 를 듣고 정리한 내용입니다. Process 프로세스의 개념 Process is a program in execution 프로세스의 문맥 (context) 특정 시점을 놓고 봤을 때 CPU 수행 상태를 나타내기 위해 필요한 모든 요소들 CPU 수행 상태를 나타내는 하드웨어 문맥 PC (Program Counter) 각종 register 프로세스의 주소 공간 code, data, stack 프로세스 관련 커널 자료구조 PCB (Process Control Block) kernel stack 프로세스의 상태 (Process State) CPU는 하나밖에 없기 때문에 프로세스는 상태를 변경하며 수행된다. (사진 출처 - 블로그) Running : CPU를 잡고 instr..

[월간 회고] 2021년 3월

👀 2021년 3월 월간 회고 벌써 4월을 맞이했다. 작년 10월부터 가능한 매일 TID (Today I Did)를 써왔는데 4월부터는 주간 회고랑 월간 회고도 같이 써보려고 한다. 한 주를 돌이켜보며, 한 달을 돌이켜보며 어떻게 살았는지 알 수 있고 다음 스텝으로의 계획을 더 잘 세울 수 있지 않을까 싶었다. 1. 외주 작년 11월에 소프트스퀘어드 수료하고 1월부터 백엔드 외주를 맡아 진행했다. 당시 제의가 들어왔을 때도 고민을 많이 했었다. 1월 초부터 3월 말까지 세 달 조금 안되는 기간동안 해야하는데 상반기 지원을 하면서 하기엔 너무 벅차지 않을까 싶었다. 하지만 지금 아니면 언제 외주를 해볼까 하는 마음에 수락했고 굉장히 힘들었다. 플레이스토어에 올라가 있는 걸 보니 감격스럽다. 아직 베타 서비..