javascript

문제 설명 퍼즐 게임으로 유명한 하노이의 탑은 원판을 마지막 기둥으로 모두 옮기면 끝나는 게임이다. 규칙 크게 두가지가 있다. 첫 번째는 한 번에 하나의 원판만 옮길 수 있다이고, 두 번째는 큰 원판이 작은 원판 위에 있어서는 안된다는 규칙이다. 위에 규칙을 준수하면서 첫 번째 기둥에 있는 모든 원판을 세 번째 기둥으로 최소한의 이동으로 옮겨주면 된다. 더보기 ※ 제한사항 : 원판의 개수는 15이하의 자연수이다. 풀이 문제에서는 원판의 개수를 가르키는 변수 n(int)이 주어진다. n의 개수가 정해져 있지 않기 때문에 단순 반복으로 접근하기에는 무리가 있다고 생각을 하였다. 그래서 재귀를 이용해 접근하였다. 처음 hanoi(n, 1, 3, 2, answer) 이러한 함수 형태로 요청을 하면 hanoi(n..
문제 설명 주어진 두 변수 left(int)부터 right(int)까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 홀수인 수는 뺀 다음 결과값을 반환해주는 문제이다. 풀이 간단하게 해결할 수 있는 문제이다. left부터 right까지 반복을 돌리면서 나머지가 0인걸 찾아 누적시켜준 다음 홀수 짝수를 판단하여 더하거나 빼주면 된다. 아래는 풀이에 사용한 코드이다. function solution(left, right) { var answer = 0; // 결과값에 사용할 변수 let num = 0; // 약수의 개수를 판별할 때 사용할 변수 // 범위 내에서 약수의 개수를 판별하고 결과값에 반영하는 부분 for(let i = left; i
문제 설명 주어진 문제에 따르면 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 하는데 다양한 모양의 크기의 명함들을 모두 수납할 수 있는 지갑을 만들기 위해 명함의 가로, 세로 크기를 값으로 가지고 있는 이차원 배열 size(int[][])에 대해 주어진 짝에 대해 가장 작은 직사각형을 만들 수 있는 경우에 수를 찾아 반환하는 문제이다. 더보기 ※ 제한 사항으로는 size의 길이는 1 이상 10,000 이하 / 가로, 세로 크기는 1 이상 1,000 이하인 자연수여야 한다. 풀이 문제에서 주어진 변수 size(int[][])에는 가로, 세로 크기가 한 쌍으로 여러 개의 값이 담겨있다. 모든 명함이 들어가는 가장 작은 직사각형을 만들어야 하기 때문에 가로, 세로 크기를 합해서 최댓값을 찾은 다음 최댓..
문제 설명 사과 상자를 가장 최적화해서 포장하는 문제이다. k,m,score[] 변수가 주어지며, 1~k점까지의 점수가 있을 때, k점이 최상품, 1점이 최하품, 한 상자에 m개씩 담아 포장했을 때 얻을 수 있는 최대 이익(최저 사과 점수 * 한 상자에 담긴 사과 개수 * 상자의 개수)를 반환해주면 된다. 풀이 문제에서 변수로 주어지는 score[]에는 각각 점수로 표현된 사과가 담겨 있다. 최대 이익을 실현하려면 가장 높은 점수가 담긴 사과들부터 모아주면 된다. 그러기 위해 score을 내림차준으로 정렬하고 가능한 많은 상자로 쪼개어 result 변수에 저장한 다음 문제에서 주어진 최대 이익을 계산한 값을 answer라는 변수에 담아주어 반환하는 방식으로 코드를 작성하였다. 아래는 풀이에 사용한 코드이..
· JavaScript
| 객체 자바스크립트는 객체 지향형 프로그래밍 언어로 자바스크립트를 구성하는 모든 요소는 객체로 이루어져 있다. 그러므로 자바스크립트를 배운다면 객체에 대해 자세히 알아둘 필요가 있다. 객체는 이름(name)과 값(value)으로 이루어진 프로퍼티들의 집합을 뜻하는데 아래 코드에서 fruit이 하나의 객체를 뜻하며 {apple: '사과', banana : '바나나'} 가 프로퍼티 apple과banana가 이름(name), '사과', '바나나'가 값(value)라고 보면 된다. const fruit = { apple : '사과' banana : '바나나' } | 프로퍼티 접근과 수정 객체를 생성하였으면 객체에 포함 된 프로퍼티에 접근하고 삭제, 변경과 같은 수정을 할 수 있어야 한다. 프로퍼티에 접근하기 ..
· JavaScript
| 제어문 일반적으로 프로그램을 실행할 때 코드는 위에서부터 아래로 실행되는 흐름을 가진다. 하지만 제어문을 사용하면 특정 조건에 따라 특정 코드를 실행하거나 특정 코드 부분을 반복적으로 실행하는 것이 가능하다. 자주 사용되는 제어문에는 조건문과 반복문이 있다. | 조건문 조건문은 말그대로 특정 조건에 따라 코드를 실행하는 제어문이다. 조건문의 종류로는 if-else 문, swith 문이 있다. | if-else문 조건문의 종류 중 하나로 특정 조건식에 대한 논리적 판단을 진행하여 참, 거짓 여부에 따라 참이면 if 문의 코드 블록을 실행하고 거짓이면 else 문의 코드 블록을 실행시킨다. 하나의 조건식이 아니라 여러개의 조건식을 사용하여 비교하고 싶다면 else if을 사용하면 된다. 처음 조건식이 참..
OH HAMIN
'javascript' 태그의 글 목록 (4 Page)