[4코1파] #81. LV 2. 삼각 달팽이

gunny·2023년 3월 25일
0

코딩테스트

목록 보기
81/530

[4코1파] 4명의 안드로이드 개발자와 1명의 파이썬 개발자의 코딩 테스트 서막 : 4코1파

Rule :

하루에 1문제씩 풀기.
한 문제당 30분씩은 고민하기.
왜 그렇게 풀었는지 공유하기.
하루라도 놓친다면 벌금은 1,000원

START :

[3코1파] 2023.01.04~ (81일차)
[4코1파] 2023.01.13~ (72일차)

Today :

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

이제 그 그래프 탐색을 곁들인

여담

하.. 재밌어보여서 선택했는데 또 이딴걸 골라서 머리 아픈 나 레전드 인생
코드랑 싸웠어요..

미..미친놈아.. 니가 먼저 어려웠잖아

profile
꿈꾸는 것도 개발처럼 깊게

0개의 댓글