하루에 1문제씩 풀기.
한 문제당 30분씩은 고민하기.
왜 그렇게 풀었는지 공유하기.
하루라도 놓친다면 벌금은 1,000원
[3코1파] 2023.01.04~ (81일차)
[4코1파] 2023.01.13~ (72일차)
2023.03.25 [81일차]
프로그래머스 LV 2
삼각 달팽이
https://school.programmers.co.kr/learn/courses/30/lessons/68645
문제 설명
정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요.
제한사항
n은 1 이상 1,000 이하입니다.
입출력 예
입출력 예시
입출력 예 #1 문제 예시와 같습니다.
입출력 예 #2 문제 예시와 같습니다.
입출력 예 #3 문제 예시와 같습니다.
문제 풀이 방법
그림을 열심히 그려 봤다.
실패했다.
고민했다..하지만... 성공할 수 없었다
그래서 구글링함^^
렙 2 진짜 뒤진당
내 코드 인척 다른 새럼 코드 일걸
def solution(n):
res = [[0]*n for _ in range(n)]
answer = []
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
res[x][y] = num
num+=1
for i in res:
for j in i:
if j :
answer.append(j)
return answer
증빙
다른 사람 풀이
코드를 봐도 이해를 못하겠는 나 레게노
i%3 ==0 아래, i%3==1 이 오른쪽 i%3==2가 위... 이거 뭐..뭐냐고
https://moondol-ai.tistory.com/395
이제 그 그래프 탐색을 곁들인
여담
하.. 재밌어보여서 선택했는데 또 이딴걸 골라서 머리 아픈 나 레전드 인생
코드랑 싸웠어요..
미..미친놈아.. 니가 먼저 어려웠잖아