https://programmers.co.kr/learn/courses/30/lessons/68645
삼각형방식으로 값을 채워갈 때 경우의 수가 아래로 가는 경우, 우측으로 가는 경우, 위로 가는 경우
총 3가지로 나누어진다.
아래로 가는 경우는 3으로 나눈 나머지가 0인 경우이다.
이때 triangle에서 x좌표 값이 +1씩 n까지만 증가하는 것을 볼 수 있다.
위로 가는 경우는 3으로 나눈 나머지가 2인 경우로, x,y좌표가 -1씩 감소하는 것을 볼 수 있다.
각 경우에 해당하는 좌표에 값을 넣어준다.
def solution(n):
triangle=[]
for i in range(1,n+1):
triangle.append([0]*i)
x,y=-1,0
num=1
for i in range(n):
for j in range(i,n):
if i%3==0:
x+=1
elif i%3==1:
y+=1
elif i%3==2:
x-=1
y-=1
triangle[x][y]=num
num+=1
result=[]
for i in triangle:
for j in i:
result.append(j)
return (result)