Next-BlockChain

고정 헤더 영역

글 제목

메뉴 레이어

Next-BlockChain

메뉴 리스트

  • 홈
  • 태그
  • 분류 전체보기 (358)
    • Computer Science (19)
      • OS (3)
      • Network (1)
      • NoSQL (4)
      • DevOps (2)
      • Security (8)
    • Blockchain (94)
      • BlockChain Theory (25)
      • Bitcoin (3)
      • Ethereum (17)
      • Cosmos (4)
      • DeFi (13)
      • DID (3)
      • NFT (7)
      • Oracle - Chainlink (8)
      • Geth_2019_(NAKsir-melody)님자.. (1)
    • Web (13)
      • React (6)
      • NodeJS (4)
      • Echo (2)
    • Programming Language (201)
      • Go (60)
      • Solidity (40)
      • HTML (2)
      • JavaScript (97)
      • CSS (2)
    • 독서 (19)
      • 독후감 (19)
    • 교양 (6)
      • 국어 (4)
      • 영어 (1)
      • 인물 (1)
    • 경제 (0)

검색 레이어

Next-BlockChain

검색 영역

컨텐츠 검색

Programming Language/JavaScript

  • JavaScript Algorithm - shadowOfPapers

    2023.03.03 by Yongari

  • JavaScript Algorithm - gossipProtocol2

    2023.03.02 by Yongari

  • JavaScript Algorithm - countIslands

    2023.03.01 by Yongari

  • JavaScript Algorithm - longestPalindrome

    2023.02.28 by Yongari

  • JavaScript Algorithm - jobAllocation

    2023.02.27 by Yongari

  • JavaScript Algorithm - decompression

    2023.02.24 by Yongari

  • JavaScript Algorithm - coinChange

    2023.02.23 by Yongari

  • JavaScript Algorithm - closestPairOfPoints

    2023.02.22 by Yongari

JavaScript Algorithm - shadowOfPapers

문제설명: 좌표평면 위에 존재하는 수많은 직사각형에 대한 정보가 2차원 배열로 주어집니다. 이 직사각형들은 서로 겹쳐 있을(overlapping) 수 있습니다. 이 직사각형들이 이루는 면적을 리턴해야 합니다. 문제를 다르게 표현하면 아래와 같습니다. - 밑이 투명한 좌표평면 위에 직사각형 모양의 종이를 여러 개 올려놓고 위에서 빛을 비출 때 생기는 그림자의 넓이를 구해야 합니다. 좀 더 쉬운 이해를 위해서는 입출력 예시를 보시는 것을 추천드립니다. 각 배열은 [x, y, width, height]의 요소로 이루어져있습니다. 예를 들어 [0, 1, 4, 4]는 0,1 좌표에서 너비 4, 높이 4로 이루어진 사각형이라고 생각하시면 됩니다. 입력 인자 1 : papers 배열을 요소로 갖는 배열 papers...

Programming Language/JavaScript 2023. 3. 3. 13:02

JavaScript Algorithm - gossipProtocol2

문제설명: 세로와 가로의 길이가 모두 N인 마을의 지도가 배열로 주어졌습니다. '0'은 주민이 살지 않는 빈 땅을 의미하고, '1'은 평범한 주민이 살고 있는 집을 의미하며, '2'는 유사시 비상 연락 요원으로 선정 가능한 주민이 살고 있는 집을 의미합니다. 이 마을의 비상연락망 시스템을 구축하기 위해 비상 연락 요원으로 선정 가능한 주민 중 일부를 비상 연락 요원으로 임명하려고 합니다. 각 담당자들은 한 시간 후, 정보를 상하좌우 한 칸 바로 옆에 있는 집으로 전달하기 시작합니다. 정보를 전달받은 주민 역시 한 시간 후, 상하좌우 한 칸 바로 옆에 있는 집으로 해당 정보를 전달합니다. 단, 비상 연락 요원으로 선정받지 못한 주민('2')은 이에 불만을 품고 정보를 전달하지 않습니다. 비상 연락 요원으로..

Programming Language/JavaScript 2023. 3. 2. 14:25

JavaScript Algorithm - countIslands

문제설명 : 세로와 가로의 길이가 각각 R, M인 2차원 R X M 배열 grid가 주어졌을 때, '1'은 땅을 의미하고 '0' 은 물을 의미합니다. 주어진 2차원 배열에 존재하는 섬의 개수를 리턴해야 합니다. 즉, 0은 물이고 1이 땅이니까 1끼리 모여있는 섬의 개수를 리턴하면 됩니다. 그리고 한번 체크한 1에 대해서는 중복해서 체크하지 않는 것도 핵심입니다. 입력 인자 1 : grid 세로와 가로의 길이가 각각 R, M인 2차원 배열 arr.length는 R arr[i].length는 M arr[i][j]는 0 또는 1 출력 number 타입을 리턴해야 합니다. 주의사항 섬이란 물로 둘러싸여 있는 땅을 말합니다. 가로 혹은 세로로 땅이 연결되어 있는 경우 하나의 섬으로 간주합니다. 2차원 배열의 범위..

Programming Language/JavaScript 2023. 3. 1. 12:47

JavaScript Algorithm - longestPalindrome

문제설명: 문자열을 입력받아 부분 문자열 중 가장 긴 (palindrome)*의 길이를 리턴해야 합니다. palindrome: 데이터를 앞에서 뒤로 또는 뒤에서 앞으로 조회한 결과가 동일한 경우 ' dad ' / ' rar' / ' cac' 앞으로 조회해도 결과가 같고, 뒤로 조회해도 결과가 같은 부분문자열 요소를 만든 뒤 그 중 문자열 길이가 가장 긴 길이를 리턴하면 된다. 입출력 예시를 보면 바로 파악할 수 있습니다. 입력 인자 1 : str string 타입의 공백이 있는 알파벳 소문자 문자열 출력 number 타입을 리턴해야 합니다. 주의사항 문자열 str의 부분 문자열은 자기 자신을 포함합니다. 공백도 회문에 포함될 수 있습니다. 입출력 예시 let str = 'My dad is a raceca..

Programming Language/JavaScript 2023. 2. 28. 15:07

JavaScript Algorithm - jobAllocation

문제 설명: 공장의 조립 기계가 고장이 나 수리를 위해 여러 명의 수리공들이 왔습니다. 조립 기계는 일자 형태로 길게 배치되어 있기 때문에 수리공들 또한 나란히 위치해서 수리를 진행해야 합니다. 기계의 각 부품은 한 명의 수리공만 수리할 수 있고, 이동을 최소화하기 위해 각 수리공들은 서로 연속해서 있는 부품만 수리해야 합니다. 각 부품을 수리하는 데 걸리는 작업량은 제각각이고, 수리 시간은 작업량에 비례합니다. 작업량과 수리공들의 수가 주어질 때, 전체 수리가 가장 빠르게 끝나는 시간을 리턴해야 합니다. 문제를 다르게 표현하면 아래와 같습니다. - 자연수 배열을 n개의 연속 구간으로 나눌 때, 합이 가장 큰 구간의 합을 sum이라고 합시다. sum이 가장 작아지는 분배에서의 sum을 구해야 합니다. 입..

Programming Language/JavaScript 2023. 2. 27. 19:29

JavaScript Algorithm - decompression

문제 설명: 한 변의 길이가 2의 제곱수인 정사각형의 흑백 이미지가 2차원 배열로 주어집니다. 각 좌표에는 0(백) 또는 1(흑)이 저장되어 있습니다. 이미지에 포함된 데이터가 모두 1이면 '1', 모두 0이면 '0' 한 글자로 압축할 수 있습니다. 그렇지 않은 경우, 이를 대문자 X로 표시하고 전체를 4등분하여 재귀적으로 압축합니다. 4등분한 영역의 순서는 좌측 상단, 우측 상단, 좌측 하단, 우측 하단입니다. 글로만 보면 이해하기 어렵습니다. 다음 배열과 설명 그리고 그림을 참고해주세요. 4등분을 할 때 위의 그림처럼 4등분을 하면 좌상(1001), 우상(1111), 좌하(0000), 우하(1100)과 같이 나옵니다. 이렇게 이해하신 후 다음 설명을 보시면 이해하기 쉽습니다. const image =..

Programming Language/JavaScript 2023. 2. 24. 12:30

JavaScript Algorithm - coinChange

문제 다양한 동전들을 가지고 특정 금액을 만들 수 있는 모든 경우의 수를 리턴해야 합니다. 예를 들어, 100원, 500원짜리 동전을 가지고 1,000원을 만들 수 있는 방법은 총 3가지 입니다. 100원 10개, 100원 5개 + 500원 1개, 500원 2개 위의 경우를 다 합치면 총 3개의 방법이 나옵니다. 더 자세한 것은 입출력 예시를 통해 보시고 그래도 이해가 안된다면 console.log 출력 부분을 보시고 감을 잡으시면 됩니다. 입력 인자 1 : total number 타입의 이하의 자연수 인자 2 : coins number 타입을 요소로 갖는 배열 coins.length는 10,000 이하 coins[i]는 20 이하의 양의 정수 출력 number 타입을 리턴해야 합니다. 주의사항 동전의 ..

Programming Language/JavaScript 2023. 2. 23. 15:49

JavaScript Algorithm - closestPairOfPoints

문제설명 : 좌표평면 상의 다양한 점들을 입력받아 가장 가까운 두 점 사이의 거리를 리턴해야 합니다. 모든 점들을 직접 그려보고 그래프를 그려보면서 이해하면 좀 더 이해가 빨라집니다. 직선을 그려보면 길이가 어떻게 되는지 파악할 수 있습니다. 입력 인자 1: points 배열을 요소로 갖는 배열 points.length는 40,000 이하 points[i]는 number 타입을 요소로 갖는 배열 points[i].length는 2 points[i]의 요소는 차례대로 좌표평면 위의 y좌표, x좌표 points[i][j]는 0 이상 10,000 이하의 정수 출력 number 타입을 리턴해야 합니다. 주의사항 points는 y좌표나 x좌표 등으로 정렬되어 있지 않습니다. 두 점 사이의 거리를 계산하는 함수 c..

Programming Language/JavaScript 2023. 2. 22. 16:15

추가 정보

인기글

최신글

페이징

이전
1 2 3 4 ··· 13
다음
TISTORY
Next-BlockChain © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바