4-1 자릿수의 합
배열에 숫자들이 담겨서 입력되면, 숫자들의 각 자릿수를 더한 값이 가장 큰 값을 출력한다. 근데 자릿수를 더한 값이 같은 숫자의 경우는 배열에 담겨서 입력된 숫자가 큰 값이 출력된다. const arr = [128, 460, 603, 40, 521, 137, 123, 11261]; 예제없이 보면 문제가 조금 애매한거 같은데 예제를 보면 쉽다. 128의 자릿수의 합은 11 그다음은 10, 9 ,4,8,11,6,11 이다. 가장 큰 합이 11 인데 11이 3개다 이런 경우에는 128, 137, 11261을 비교해서 가장 큰 수를 출력한다. 그러니 출력되는 값은 11261이다. function solution(arr) { let answer = 0; const sums = []; let biggest = 0;..
2021. 12. 14.
아일랜드 (BFS)
https://kong-dev.tistory.com/58 아일랜드(DFS) 문제설명 [1, 1, 0, 0, 0, 1, 0], [0, 1, 1, 0, 1, 1, 0], [0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 1, 0, 1, 1], [1, 1, 0, 1, 1, 0, 0], [1, 0, 0, 0, 1, 0, 0], [1, 0, 1, 0, 1, 0, 0], 1은 섬이고 0은 바다다. 섬은.. kong-dev.tistory.com 같은 문제다. 이번엔 BFS로 풀어야 한다. DFS로 하는건 못맞췄는데, BFS는 맞췄다. function solution(board) { let island = 0; const xmoving = [0, 1, 1, 1, 0, -1, -1, -1]; const ymov..
2021. 12. 5.
아일랜드(DFS)
문제설명 [1, 1, 0, 0, 0, 1, 0], [0, 1, 1, 0, 1, 1, 0], [0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 1, 0, 1, 1], [1, 1, 0, 1, 1, 0, 0], [1, 0, 0, 0, 1, 0, 0], [1, 0, 1, 0, 1, 0, 0], 1은 섬이고 0은 바다다. 섬은 상하좌우 그리고 대각선으로도 연결 돼 있고 이어진 섬은 하나로 친다. 섬의 갯수를 구하라 접근방법 설명이 너무 대충인가. DFS를 이용해서 풀어야 한다. 우선 이중for 문을 이용해서 1을 찾는다. 1을 찾으면 카운트를 하고, DFS함수를 호출한다. DFS함수 내부는 1을 만난 지점을 0으로 바꾸고 팔방으로 1이 있는지 확인한다. 1이 발견되면 그곳으로 이동해서 반복 functio..
2021. 12. 5.
미로탐색
문제설명 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 0 0 0 1 1 1 0 1 1 0 0 1 0 0 0 0 0 0 0은 지나 갈 수 있는 통로. 1은 지나 갈 수 없는 벽. 0,0 부터 시작해서 7,7로 도착하는 경우의 수를 구하는 함수를 완성하세요. function solution(board) { return answer; } let arr = [ [0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 0], [0, 0, 0, 1, 0, 0, 0], [1, 1, 0, 1, 0, 1, 1], [1, 1, 0, 0, 0, 0, 1], [1, 1, 0, 1, 1, 0, 0], [1, 0, 0, 0, 0, 0, 0], ]..
2021. 12. 3.
내 애착 메소드 Array.from 으로 표 만들기
Array.from으로 표를 만들 수 있다. 사실 아니다. 배열인데 모양이 표 모양이다. 이걸 2차원 배열 이라고 한단다. 놀라운 배열의 세계. 내가 처음 본 코드는 const graph = Array.from(Array(n), () => Array(n).fill(0)) 이거였다. 길이가 n인 배열을 각 value에 길이가 n이고 value가 0인 배열을 만들겠다는건데.. [ [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0 ] ] n이 6이라 치면 이런 배열 만들겠다는 거다. 이걸 2차원 배열이라 하나봄 저 코드처음 봤을 때..
2021. 12. 3.
대중소괄호 짝 맞추기
우리집 시니어가 추천해준 문제 프로그래머스에서는 문제가 지워진 듯 하다. 블로그들에 남아있던 문제 보고 풀었음 문제 설명 여섯 가지 괄호 '(', ')', '{', '}', '[', ']'로 이루어진 문자열이 바르게 닫힌 문자열인지 알아보려 합니다. 바르게 닫힌 문자열이라는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로, '[' 문자로 열렸으면 반드시 짝지어서 ']' 문자로, '{' 문자로 열렸으면 반드시 짝지어서 '}' 문자로 닫히는 문자열입니다. 또한, 괄호 쌍 안에는 다른 괄호 쌍이 들어갈 수 있습니다. 예를 들어, {{}}, ({})[]는 바르게 닫힌 괄호입니다. [), ]()[, ([())]는 바르게 닫히지 않은 괄호입니다. 문자열 s가 주어졌을 때, 문자열 s가 바르게 닫힌 괄호이..
2021. 11. 26.