Make Unreal REAL.
article thumbnail
Level 0. 정수를 나선형으로 배치하기

 

 

인덱스 계산이 상당히 귀찮았던 문제였다.

 

#include <iostream>
#include <iomanip>
#include <vector>

using namespace std;

vector<vector<int>> solution(int n)
{
    vector<vector<int>> answer(n, vector<int>(n));
    int num = 1;
    int r = 0, c = -1;

    for (int j = 0; j < n; ++j)
        answer[r][++c] = num++;

    while (true)
    {
        if (--n <= 0)
            break;

        for (int i = 0; i < n; ++i)
            answer[++r][c] = num++;

        for (int j = n; 0 < j; --j)
            answer[r][--c] = num++;

        if (--n <= 0)
            break;

        for (int i = n; 0 < i; --i)
            answer[--r][c] = num++;

        for (int j = 0; j < n; ++j)
            answer[r][++c] = num++;
    }

    return answer;
}
profile

Make Unreal REAL.

@diesuki4

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그