분류 전체보기 107

[Lv_2] 게임 맵 최단거리

function solution(maps) { // 큐 활용 var q = [[0, 0, 1]]; while (q.length) { var [y, x, answer] = q.shift(); // 배열 범위 내 + 현 인덱스 값 체크 => 1이면 분기처리 if (y = 0 && x = 0 && maps[y][x] === 1) { // 현 인덱스 방문금지 => 0 처리 maps[y][x] = 0; // 상대방 진영 도달여부 체크 if (y === maps.length - 1 && x === maps[0].length - 1) { // 큐의 매 실행마다 각 방향별로 순회하면서 진행되고, // 가장 먼저 도달한 값에서 return 된다..

알고리즘 2023.08.16

[Lv_2] 쿼드압축 후 세기

모든 배열의 값이 같은 경우를 처리하는 것이 까다로웠다. import java.util.*; class Solution { int[][] data = null; int zeroCnt = 0; int oneCnt = 0; public int[] solution(int[][] arr) { data = arr; // 모든 수가 같은 배열일 경우 체크 Boolean isOneValue = true; int standard = data[0][0]; for (int[] d : data) { for (int n : d) { if (n != standard) { isOneValue = false; } } } if (isOneValue) { if (standard == 0) { zeroCnt += 1; } else { ..

알고리즘 2023.08.16