전체 글(345)
-
20240123_기능개발(프로그래머스)_큐 이용
오늘의 TIL은 어제 풀이하여 TIL로 작성했던 '기능개발'의 큐를 이용한 문제 풀이이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제의 내용을 설명하면(어제랑 같은 부분) int[] progresses로 주어지는 배열에 현재 프로그램의 개발 진도가 주어지고 int[] speeds로 주어지는 배열에 인덱에 해당하는 프로그램의 개발 속도가 주어진다. 각 개발은 병렬로 이뤄지고, 배포는 앞의 기능이 배포될 때 함께 배포된다. 배..
2024.01.23 -
20240122_기능개발(프로그래머스)
오늘의 TIL은 프로그래머스의 문제 중의 '기능개발'이라는 문제의 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제의 내용을 설명하면 int[] progresses로 주어지는 배열에 현재 프로그램의 개발 진도가 주어지고 int[] speeds로 주어지는 배열에 인덱에 해당하는 프로그램의 개발 속도가 주어진다. 각 개발은 병렬로 이뤄지고, 배포는 앞의 기능이 배포될 때 함께 배포된다. 배포는 하루에 한 번만 할 수 있으며..
2024.01.23 -
20240120_2의 거듭 제곱
오늘의 TIL은 특정 수가 2의 거듭 제곱인지 확인하는 방법에 대한 내용이다. 알고리즘 문제를 풀다가 '특정 수가 2의 거듭 제곱'인지 판단해야되는 로직이 들어간 문제를 풀게되었다. 이 특정 수가 2의 거듭 제곱인지 확인하는 과정은 다른 알고리즘 문제들에서 많이 사용될 것으로 생각되어 정리한다. 1. 2의 거듭 제곱의 특성 2의 거듭 제곱은 이진수로 표현하였을 때, 하나의 비트만 1이고 나머지는 0인 특징을 가진다. 예를 들면, 8(1000), 4(0100), 2(0010). 2. 2의 거듭 제곱에서 1을 뺀 숫자와의 차이점 2의 거듭 제곱에서 1을 빼면 이진수에서 1이었던 숫자가 0이되고 그 아래의 숫자들은 모두 1이된다. 예를 들면, 8에서 1을 빼면 (1000)에서 (0111)이 되고 4에서 1을 ..
2024.01.21 -
20240119_뒤에 있는 큰 수 찾기(프로그래머스)
오늘의 TIL은 프로그래머스의 문제 중의 '뒤에 있는 큰 수 찾기'라는 문제의 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/154539 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제의 내용은 심플한데, int 배열 numbers가 주어지는데, 배열의 각 원소들에 대해 자신보다 뒤에 있는 숫자들 중에서 자신보다 크면서 가장 가까이 있는 수를 뒷 큰수라고 할 때, 모든 원소에 대한 뒷 큰수를 차례로 담은 배열을 return 하는 문제이다. (단, 뒷 큰수가 존재하지 않는 원..
2024.01.20 -
20240118_C#에서의 ref, out
오늘의 TIL은 기술 면접과 관련된 내용으로 정확하게 이해하지 못한 내용인 ref와 out에 대한 내용이다. C#이나 유니티를 이용하면서 코딩을 하면서 따로 사용하지 않았던 키워드로 컴퓨터 공학이나 C언어에 대한 기본적인 지식이 없는 나로서는 ref와 out에 대해 물었을 때 참조 형식이라는 것 말고는 답할 수 있었던게 없었다. 그래서 이번 기회에 이 개념들을 정리하고자한다. Ref 키워드(얕은 복사 매개변수 지정자) Ref는 변수를 참조 형식으로 전달하는데 사용되며, 변수가 메소드 안에서 변경될 수 있다. Ref는 명시적으로 작성해야되며, 매개변수로 전달하기 전에 반드시 초기화 되어야한다. 예를 들면 아래와 같이 작성할 수 있는데, int var = 1; // int var; 로 초기화하면 안됨 sta..
2024.01.18 -
20240117_박싱 & 언박싱
오늘의 TIL은 박싱 & 언박싱으로 내일 기술면접의 문제인데, 내용을 아예 모르는 상태이기 때문에 오늘 정리하고 내일은 나만의 언어로 답을 제출하기 위해 공부하기로 했다. 박싱과 언박싱이란? 박싱(boxing)은 값 형식을 참조 형식으로 변환 해주는 것을 의미하고 언박싱(unboxing)은 박싱했던 값을 다시 원상태로 복귀 시키는 것을 의미한다. 이는 object 타입을 사용하여 작업할 수 있는데, 모든 타입을 object로 형변환할 수 있기 때문에 가능하다. 이 때, object가 참조 형식이기 때문에 object로 형변환하는 것으로 형식을 참조 형식으로 변환할 수 있다. 박싱과 언박싱 하는 법 박싱은 아래와 같이 코드를 짜면 된다. int n = 10; object obj = n; 언박싱은 아래와 같..
2024.01.18