//구글콘솔 광고 추가가
정수를 나선형으로 배치하기 문제

 

내 코드
using System;
//+1
public class Solution {
    public int[,] solution(int n) {
        int[,] answer = new int[n,n];
        string [,] answer2 = new string[n,1];
        int num = 1;
        for (int x = 0; x < n; x++)
        {
            for (int y = 0; y < n; y++)
            {
                answer[x,y] = -1;
            }
        }

        for (int i = 0; i < n; i++)
        {
            //왼 >> 오
            for (int r = i; r < n - i; r++)
            {
                if (answer[i,r] == -1)
                    answer[i,r] = num++;
            }
            //위 >> 아래
            for (int d = 1; d < n - i; d++)
            {
                if (answer[d,n - i - 1] == -1)
                    answer[d,n - i - 1] = num++;
            }
            //오 >> 왼
            for (int l = n - i - 1; 0 <= l; --l)
            {
                if (answer[n - i - 1,l] == -1)
                    answer[n - i - 1,l] = num++;
            }
            //아래 >> 위
            for (int u = n - i - 1; 0 < u; --u)
            {
                if (answer[u - 1,i] == -1)
                    answer[u - 1,i] = num++;
            }
        }

        for(int x =0; x < n; x++)
        {
            for(int y =0; y < n; y++)
            {
                if (y != 0) answer2[x, 0] += ",";
                
                answer2[x, 0] += + answer[x, y];
            }
        }
        return answer;
    }
}

 

728x90
반응형

+ Recent posts