굳이 문제의 그림을 그대로 담으려고 하지 말고 2차원 배열에서 다루기 쉽게 다음 그림과 같이 저장하면 됩니다.
2차원 배열에서 반시계 방향인 아래 → 오른쪽 → 왼쪽 위로 진행하는 것이 됩니다.
int [][] triangle = new int[n][n];
int v = 1; // 변수를 채워 넣을 숫자로, 숫자를 triangle에 기록할 때마다 1씩 증가함.
int x = 0;
int y = 0;
while (true) {
// 아래로 이동
// 오른쪽으로 이동
// 왼쪽으로 이동
}
while (true) {
triangle[y][x] = v++;
if (y + 1 == n || triangle[y+1][x] != 0) break;
y += 1;
}
if (x + 1 == n || triangle[y][x+1] != 0) break; // 오른쪽으로 이동 할 수 없으면 탈출
x += 1;