프로그래머스/프로그래머스 LV.0
프로그래머스 LV.0 - 정수를 나선형으로 배치하기
밍쎄
2023. 8. 10. 00:56
class Solution {
public int[][] solution(int n) {
int[][] answer = new int[n][n];
int[] dx = {-1, 0, 1, 0};
int[] dy = {0, 1, 0, -1};
int x = 0, y = 0, d = 1;
int k = n * n;
int cnt = 1;
while(cnt < k){
int nx = x + dx[d];
int ny = y + dy[d];
if(nx < 0 || nx >= n || ny < 0 || ny >= n || answer[nx][ny] > 0) {
d = (d + 1) % 4;
continue;
}
answer[x][y] = cnt;
cnt++;
x = nx;
y = ny;
}
answer[x][y] = cnt;
return answer;
}
}
https://school.programmers.co.kr/learn/courses/30/lessons/181832
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
728x90