[프로그래머스] 쿼드 압축 후 개수 세기 (javascript)
Posted by 해랑쓰 블로그 (Haerang's blog)
주어진 범위 내에서 하나라도 다른 수가 있으면 시작위치를 기준으로 길이/2 만큼 y,x에 더해서 새로운 시작위치를 만들고 새로운 길이를 len/2로 해서 재귀함수로 던져준다. 중간에 주어진 범위에서 모든 수가 같다면 해당 수의 개수를 +1 더해주고 더 길게 들어가지 않고 len이 1이 되면 더이상 쪼갤 수 없으므로 해당 수를 +1더해주고 끝낸다. --- new 풀이! function solution(arr) { var answer = [0,0]; let n=arr.length; go(0,0,n); function go(y,x,len){ let cur=arr[y][x]; let pass=true; for(let i=y;i