(Java) 프로그래머스 - 삼각 달팽이
·
코딩 테스트
문제의 요구사항은 간단한데 뭔가 될듯 말듯 한 느낌에 풀기가 어려웠다. 처음에는 재귀로 풀어보려고 시도했으나 실패했고 n x n 배열을 만들어서 좌표로 접근했다. 로직은 n x n 배열을 만들고 탐색 메서드를 호출해서 0,0 부터 값을 삽입한다. 탐색 메서드에서 상태를 알기 위해서 flag라는 변수를 두었고 배열의 범위를 벗어나지 않으면서 방문하지 않았다면 각 x, y의 변수를 증가시켜서 좌표를 얻었고 그게 아니라면 flag의 상태를 변경시켰다. flag가 0이면 왼쪽 아래로 좌표를 변경, flag가 1이면 오른쪽으로 좌표를 변경 flag가 2이면 왼쪽 위로 좌표를 변경하였다. 탐색이 끝나면 1부터 n까지 idx를 증가시켜가면서 필요한 값만 리스트에 저장하고 리스트를 다시 배열로 변환하여 최종적인 답을 ..