반응형

전체 글 273

[프로그래머스/JavaScript] Lv.1 햄버거 만들기

해당 문제는 시간 복잡도 O(n)을 활용하는 문제이다. 1. 문제 설명 햄버거 가게에서 일을 하는 상수는 햄버거를 포장하는 일을 합니다. 함께 일을 하는 다른 직원들이 햄버거에 들어갈 재료를 조리해 주면 조리된 순서대로 상수의 앞에 아래서부터 위로 쌓이게 되고, 상수는 순서에 맞게 쌓여서 완성된 햄버거를 따로 옮겨 포장을 하게 됩니다. 상수가 일하는 가게는 정해진 순서(아래서부터, 빵 – 야채 – 고기 - 빵)로 쌓인 햄버거만 포장을 합니다. 상수는 손이 굉장히 빠르기 때문에 상수가 포장하는 동안 속 재료가 추가적으로 들어오는 일은 없으며, 재료의 높이는 무시하여 재료가 높이 쌓여서 일이 힘들어지는 경우는 없습니다. 예를 들어, 상수의 앞에 쌓이는 재료의 순서가 [야채, 빵, 빵, 야채, 고기, 빵, 야..

Algorithm 2022.12.21

[Kotlin] 웹뷰(WebView) 사용 방법

WebView WebView란? 앱에서 웹페이지 제공하려고 하는 경우 WebView를 사용하게 된다. WebView클래스는 Android의 View 클래스의 확장으로, 웹페이지를 활동 레이아웃의 일부로 표시할 수 있게 해 주고, 탐색 컨트롤이나 주소 표시줄 등 완전히 개발된 웹브라우저의 기능은 전혀 포함되어 있지 않는다. 앱 내에 웹페이지를 넣어준다고 생각하면 된다. 1. 사용 방법 1-1) 인터넷 퍼미션 설정 (AndroidManifest.xml) //권한 주기 manifests > AndroidManifest.xml 수정 1-2) layout에 WebView 추가 1-3) Activity 수정 웹 이랑 앱은 다르기 때문에 세팅이 필요 class webActivity : AppCompatActivity..

Kotlin 2022.12.20

[프로그래머스/JavaScript] Lv.2 뉴스 클러스터링

해당 문제는 Greedy 문제로 반복문(for) 통해 답을 구해나가는 문제이다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브는 사용자들이 편리하게 다양한 뉴스를 찾아볼 수 있도록 문제점을 개선하는 업무를 맡게 되었다. 개발의 방향을 잡기 위해 튜브는 우선 최근 화제가 되고 있는 "카카오 신입 개발자 공채" 관련 기사를 검색해보았다. 카카오 첫 공채..'블라인드' 방..

Algorithm 2022.12.19

배열의 특정 값 (includes, findIndex, indexOf) 찾는 방법

1. includes() 특정 값 포함 여부 반환 // 전체 포함여부 Boolean 반환 'abzcd'.includes('z'); // 2번째 인덱스 부터 zcd중 포함여부 반환 'abzcd'.includes( 'z', 2 ) 2. findIndex() 값을 찾는 조건을 callback 함수로 전달 const arr = [1, 2, 3, 2]; function findNumberTwo(element) { // 2 를 찾으면 true 반환 if(element === 2) { return true; } } document.writeln(arr.findIndex(findNumberTwo)); 3. indexOf(), lastIndexOf() 일치하는 값 인덱스 찾기 const arr = [1, 2]; // 정..

JavaScript 2022.12.18

Map, 배열의 최대 값(Max) 최소 값(Min) 구하기

1. 기본 최대 값, 최소 값 구하기 파라미터 중 최대 값, 최소 값을 구한다. const max = Math.max(1, 2, 3, 4, 5); console.log(max); // 5 const min = Math.min(1, 2, 3, 4, 5); console.log(min); // 1 2. 배열의 최댓값 최소 값 구하기 2-1) Function.prototype.apply() 사용해 구하기 apply() 메서드는 주어진 this 값과 배열 (또는 유사 배열 객체)로 제공되는 arguments로 함수를 호출합니다. const numbers = [5, 6, 2, 3, 7]; const max = Math.max.apply(null, numbers); console.log(max); // 7 cons..

JavaScript 2022.12.17

[프로그래머스/JavaScript] Lv.1 푸드 파이트 대회

해당 문제는 Greedy 문제로 반복문(for) 통해 답을 구해나가는 문제이다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 ..

Algorithm 2022.12.16

[프로그래머스/JavaScript] Lv.3 숫자 타자 대회

해당 문제는 시간 복잡도를 개선하여 효율성을 높이는 문제이다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 위와 같은 모양으로 배열된 숫자 자판이 있습니다. 숫자 타자 대회는 이 동일한 자판을 사용하여 숫자로만 이루어진 긴 문자열을 누가 가장 빠르게 타이핑하는지 겨루는 대회입니다. 대회에 참가하려는 민희는 두 엄지 손가락을 이용하여 타이핑을 합니다. 민희는 항상 왼손 엄지를 4 위에, 오른손 엄지를 6 위에 두고 타이핑을 시작합니다. 엄지 손가락을 움직여 다음 숫자를 누르는 데에는 일정 시간이 듭니다. 민희는 어떤 두 숫자를 연속으로 입..

Algorithm 2022.12.15

[프로그래머스/JavaScript] Lv.1 과일 장수

해당 문제는 정렬 후 반복문을 통해 답을 구해나가는 문제이다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 과일 장수가 사과 상자를 포장하고 있습니다. 사과는 상태에 따라 1점부터 k점까지의 점수로 분류하며, k점이 최상품의 사과이고 1점이 최하품의 사과입니다. 사과 한 상자의 가격은 다음과 같이 결정됩니다. 한 상자에 사과를 m개씩 담아 포장합니다. 상자에 담긴 사과 중 가장 낮은 점수가 p (1 ≤ p ≤ k)점인 경우, 사과 한 상자의 가격은 p * m 입니다. 과일 장수가 가능한 많은 사과를 팔았을 때, 얻을 수 있는 최대 이익을..

Algorithm 2022.12.14

[프로그래머스/JavaScript] Lv.1 가장 가까운 같은 글자

해당 문제는 반복문을 통해 하나씩 비교하는 문제이다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다. 예를 들어, s="banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다. b는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. n은..

Algorithm 2022.12.13

[JavaScript] 배열(1차원 배열, 2차원 배열) sort() 정렬 방법

sort() sort() 란? JavaScript에 내장되어있는 함수로 배열을 정렬하고 싶을 경우 사용한다. (오름차순, 내림차순) /* sort() 형식 */ function callback() { ... } 배열.sort(); 배열.sort(callback); sort의 인자(Argument)는 전달해도 되고, 안 해도 된다. 1. 1차원 배열 정렬 방법 const arr1 = [2, 1, 3]; const arr2 = ['banana', 'apple', 'orange'] arr1.sort(); // [1, 2, 3] arr2.sort(); // ['apple', 'banana', 'orange'] sort함수에 파라미터가 없으면, 유니코드 순서에 따라서 오름차순으로 정렬된다. 숫자인 경우 배열 요소..

JavaScript 2022.12.12
반응형