프로그래머스 - Level2 위장 문제 설명 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. (예시 생략) 스파이가 가진 ...
Javascript30 - Day 14 JavaScript References VS Copying
Javascript30 학습 내용 자바스크립트에서 변수에 할당된 값을 복사할 때 얕은 복사(shallow copy)가 이루어지는 경우와 깊은 복사 (deep copy)가 이루어지는 경우를 이해한다. 원시 타입 데이터 객체를 제외한 나머지 원시 타입 데이터(string, number, boolean 등)는 다른 변수에 값을 복사하고 원본 ...
Javascript30 - Day 13 Slide in on Scroll
Javascript30 구현 내용 스크롤을 했을 때, 이미지의 절반 이상 지나가면 자연스럽게 날아오는 효과를 구현한다. 브라우저에서 스크롤한 위치와 이미지의 높이 및 offset 값을 계산해서 절반을 지나갔는지 확인한다. debouncing 템플릿 파일에서 제공하는 함수이다. 디바운싱은 연속해서 호출되는 함수들 중 마지막 함수 또는 제일...
프로그래머스 Level 2 - 구명보트 (JavaScript)
프로그래머스 - Level2 구명보트 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람...
프로그래머스 Level 2 - 큰 수 만들기 (JavaScript)
프로그래머스 - Level2 큰 수 만들기 문제 설명 어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다. 예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다. 문자열 형식으로 숫자 number와 제...
프로그래머스 Level 2 - H-Index (JavaScript)
프로그래머스 - Level2 H-Index 문제 설명 H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이...
프로그래머스 Level 2 - 타겟 넘버 (JavaScript)
프로그래머스 - Level2 타겟 넘버 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-...
프로그래머스 Level 2 - 예상 대진표 (JavaScript)
프로그래머스 - Level2 예상 대진표 문제 설명 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, … , N-1번↔N번의 참가자끼리 게임을 진행합니다. 각 게임에서 이긴 사람은 다음 라운드에 진출할 수...
프로그래머스 Level 2 - 짝지어 제거하기 (JavaScript)
프로그래머스 - Level2 짝지어 제거하기 문제 설명 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S...
프로그래머스 Level 2 - 124 나라의 숫자 (JavaScript)
프로그래머스 - Level2 프린터 문제 설명 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린터를 개발했습니다. 이 새롭게 개발한 프린터는 아래와 같은 방식으로 인쇄 작업을 수행합니다. 1. 인쇄 대기...