본문 바로가기

분류 전체보기

[프로그래머스] 카드뭉치 카드뭉치 문제 설명 def solution(cards1: List[str], cards2: List[str], goal: List[str]) -> str: ... 영단어로 이루어진 두 배열 cards1과 cards2 를 번갈아가며 연속된 카드를 뽑아 goal 을 만들 수 있는지 여부를 반환하면 된다. 제한사항 1 ≤ cards1의 길이, cards2의 길이 ≤ 10 1 ≤ cards1[i]의 길이, cards2[i]의 길이 ≤ 10 cards1과 cards2에는 서로 다른 단어만 존재합니다. 2 ≤ goal의 길이 ≤ cards1의 길이 + cards2의 길이 1 ≤ goal[i]의 길이 ≤ 10 goal의 원소는 cards1과 cards2의 원소들로만 이루어져 있습니다. cards1, cards2, g..
[프로그래머스] 인사고과 프로그래머스 - 인사고과 문제설명 def solution(scores: List[List[int]]) -> int: ... scores result [[2,2],[1,4],[3,2],[3,2],[2,1]] 4 사원들의 태도 점수와 평가 점수가 [[2,2],[1,4],[3,2],[3,2],[2,1]] 처럼 한 쌍의 정수로 이루어진 배열로 입력된다. 임의의 사원보다 두 점수가 모두 낮은 경우가 있으면 그 사원은 제외된다. 사원들의 총점을 순서대로 나열할 때 scores[0]인 사원의 석차를 구하는 문제이다. 제한사항 1 ≤ scores의 길이 ≤ 100,000 scores의 각 행은 한 사원의 근무 태도 점수와 동료 평가 점수를 나타내며 [a, b] 형태입니다. scores[0]은 완호의 점수입니다. 0 ≤..
[프로그래머스] 시소 짝궁 코딩테스트 연습 - 시소 짝궁 문제 설명 def solution(weights: List[int]) -> int: ... 2(m), 3(m), 4(m) 거리의 지점에 좌석이 있는 시소가 평형이 되는 쌍의 갯수를 구하는 문제이다. solution 함수의 인자에 사람들의 몸무게 목록이 주어진다. 제한사항 2 ≤ weights의 길이 ≤ 100,000 100 ≤ weights[i] ≤ 1,000 몸무게 단위는 N(뉴턴)으로 주어집니다. 몸무게는 모두 정수입니다. 풀이 시소가 평형을 이루는지 확인하려면 두 사람의 무게와 각 좌석의 거리의 곱이 같은지 확인하면 된다. 이를 응용해서 몸무게1 / 몸무게2 == 거리2 / 거리1로 비율을 확인하면 된다. 문제에서 주어진 좌석의 거리는 2, 3, 4이다. 입력으로 주어..
[NUXT] loading component 페이지를 불러오거나 서버 요청을 보낼 때 대기 시간이 발생한다. 이 때 화면이 정지해있으면 사용자는 페이지가 정지한 것인지 동작중인지 알 수 없다. 로딩 페이지를 표시해 작업이 진행중이라는 것을 표시해줘야한다. NUXT에서는 간단하게 로딩창을 만들 수 있다. 먼저 로딩을 표시하기 위한 컴포넌트를 작성한다. // @/components/loading.vue Loading... // @/components/loading.vue nuxt.config.js을 열고 loading 속성에 작성했던 loading.vue 컴포넌트를 추가한다. // nuxt.config.js export default { // ... loading: '@/components/loading.vue' } 필요한 부분에서 $n..
[NUXT3] 500 window is not defined NUXT3에서 apexcharts.js 라이브러리를 사용하다 에러가 발생했다. 500 window is not defined at Object. (.../apexcharts.common.js:6:371062) at Module._compile (node:internal/modules/cjs/loader:1105:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10) at Module.load (node:internal/modules/cjs/loader:981:32) at Function.Module._load (node:internal/modules/cjs/loader:822:12) at Module.require (..
[프로그래머스] 뒤에 있는 큰 수 찾기 코딩테스트 연습 - 뒤에 있는 큰 수 찾기 문제 설명 def solution(numbers: list) -> list: ... 정수로 이루어진 배열 numbers가 주어진다. 각 원소들에 대해 자신보다 뒤에 있는 숫자 중에서 자신보다 크면서 가장 가까이 있는 수를 뒷 큰수라고 한다. numbers에서 각 원소의 뒷 큰수를 담은 배열을 구하는 문제이다. 만약 뒷 큰수가 존재하지 않으면 -1을 넣는다. 제한사항 4 ≤ numbers의 길이 ≤ 1,000,000 1 ≤ numbers[i] ≤ 1,000,000 풀이 복잡하게 풀려고 시도했지만 생각보다 간단한 방법으로 해결할 수 있었다. 접근 방법은 numbers 배열을 순회하며 숫자를 스택에 저장하고 스택에 담긴 숫자들의 뒷 큰수를 갱신하는 식으로 해결했다. ..
[프로그래머스] 크기가 작은 부분 문자열 링크 문제 설명 입력으로 숫자로 이루어진 문자열 t와 p가 주어진다. t에서 p와 같은 길이의 부분 문자열들 중 p 보다 작은 수의 갯수를 구하는 문제이다. 제한사항 def solution(t: str, p: str) -> int: ... 1 ≤ p의 길이 ≤ 18 p의 길이 ≤ t의 길이 ≤ 10,000 t와 p는 숫자로만 이루어진 문자열이며, 0으로 시작하지 않습니다. 풀이 제한사항도 단순한 문제이다. 길이가 len(p)인 부분 문자열을 모두 구해 비교하면 된다. 제출 코드 def solution(t: str, p: str) -> int: return len([True for i in range(len(t) - len(p) + 1) if t[i:i + len(p)]
[프로그래머스] 숫자 변환하기 링크 문제 설명 입력으로 1 이상의 정수 x 와 y 가 주어진다. 주어진 아래 연산으로 x를 y로 만든다. x에 n을 더합니다 x에 2를 곱합니다. x에 3을 곱합니다. x를 y로 변환하는 최소 연산 횟수를 구한다. 변환할 수 없다면 -1을 반환한다. 제한사항 def solution(x: int, y: int, n: int) -> int: ... 1 ≤ x ≤ y ≤ 1,000,000 1 ≤ n < y 풀이 DP를 응용해 풀었다. 크기가 y+1인 배열을 만들어 INF로 초기화한다. +1은 직관적으로 값과 인덱스를 일치시키기 위함이다. 각 배열의 원소는 해당 인덱스까지 연산을 수행한 횟수를 나타낸다. 문제 입력으로 주어진 x=10, n=5, y=40을 예시로하면 아래 그림과 같다. 시작점인 DP[x] 는 ..