IT/TIL(127)
-
20240313_의상(프로그래머스)
오늘의 TIL은 의상이라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 코니는 매일 다른 옷을 조합하여 입는 것을 좋아한다. 코니는 각 종류별로 최대 1가지 의상만을 착용할 수 있다. 착용한 의상의 일부가 겹치더라도, 다른 의상이 겹치지 않거나, 혹은 다른 의상을 추가로 더 착용한 경우에는 사로 다른 방법으로 옷을 착용한 것으로 계산. 코니는 하루에 최소 한 개의 의상은 입는다. 코..
2024.03.13 -
20240311_704. Binary Search(LeetCode)
오늘의 TIL은 N으로 표현이라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://leetcode.com/problems/binary-search/ 문제 설명 // Given an array of integers nums which is sorted in ascending order, // and an integer target, write a function to search target in nums. // If target exists, then return its index. Otherwise, return -1. // You must write an algorithm with O(log n) runtime complexity. 이진 탐색이라는 문제 이름을 갖는 이 문제는 nums라..
2024.03.11 -
20240308_조이스틱(프로그래머스)
오늘의 TIL은 N으로 표현이라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42860 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 조이스틱을 이용해서 알파벳 이름을 완성할 때 조작 횟수의 최소값을 구하는 문제. 초기 알파벳은 모두 A로 이루어져있으며 다음 알파벳으로 이동, 이전 알파벳으로 이동, 왼쪽 문자로 이동, 오른쪽 문자로 이동의 4가지 방향이 존재한다. 제한 조건 name은 알파벳 대문자로만 이루어져있다. name의 길이는 1..
2024.03.09 -
20240307_동적 계획법
오늘의 TIL은 동적 계획법(DP - Dynamic Programming)에 관한 간단한 정리이다. 동적 계획법(DP - Dynamic Programming) 동적 계획법(DP)는 최적화 이론의 한 기술로, 특정 범위까지의 값을 구하기 위해서 그것과 다른 범위까지의 값을 이용하여 효율적으로 값을 구하는 알고리즘 설계 기법이다. 즉, 단계를 나누고 각 단계마다 구한 값을 재활용하여 특정 범위까지 넓혀나가는 것이다. 이는 문제의 범위를 조금씩 줄여서 최소 단위를 만들어 풀어내는 분할 정복 알고리즘과 비슷한 느낌이다. DP를 사용하는 이유 DP를 사용하는 가장 큰 이유는 반복되는 계산을 줄이기 위함이다. 예를 들어 피보나치 수열의 문제를 푸는 경우를 생각해보면 피보나치 수열은 f(n) = f(n-1) + f(..
2024.03.07 -
20240306_N으로 표현(프로그래머스)
오늘의 TIL은 N으로 표현이라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42895 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 아래와 같이 5와 사칙연산만으로 12를 표현할 수 있다. 12 = 5 + 5 + (5 / 5) + (5 / 5) 12 = 55 / 5 + 5 / 5 12 = (55 + 5) / 5 위의 경우에서 5를 사용한 횟수는 각각 6회, 5회, 4회이다. 이 중 가장 작은 경우는 4회이다. 이처럼 숫자 N과 numb..
2024.03.07 -
20240305_인사고과(프로그래머스)
오늘의 TIL은 인사고과라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/152995 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 근무 태도와 동료 평가 점수가 2차원 배열로 기록된 scores. 만약 어떤 사원이 다른 사원보다 두 점수가 모두 낮으면 인센티브를 받을 수 없음. 그렇지 않은 사원들은 두 점수의 석차에 따라 인센티브가 차등 지급. 동일하면 동석차로 취급하고, 동석차 수 만큼 석차를 건너뛴다. 각 사원의 근무 태도 점수와 동..
2024.03.05