글

라벨이 이차원배열인 게시물 표시

프로그래머스 파이썬 기초 트레이닝 :: 정수를 나선형으로 배치하기 (*)

이미지
                문제 설명  프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181832 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 25 - 정수를 나선형으로 배치하기  Lv.0 문제 내용  양의 정수 n이 매개변수로 주어집니다. n × n 배열에 1부터 n2 까지 정수를 인덱스 [0][0]부터 시계방향 나선형으로 배치한 이차원 배열을 return 하는 solution 함수를 작성해 주세요. 넘나 어려운 문제다..  ----------------------------------- 나선형으로 도는거기 때문에, 시계방향으로 돈다.  방향은 R  →   D  →   L  →  U 이렇게 고정이 되어있다.  4가지 경우에 따른 방향 설정 dir = R(1) → D(2) → L(3) → U(4) def solution(n): answer = [[0]*n for i in range(n)] x, y = 0, 0 dir = 'r' #dir로 방향조정 : r, d, l, u if n == 1: return [[1]] for i in range(1, n*n+1): answer[x][y] = i if dir == 'r': y += 1 if y == n-1 or answer[x][y+1] != 0: dir = 'd' elif dir == 'd': x += 1 if x == n-1 or answer[x+1][y] != 0: ...

프로그래머스 파이썬 기초 트레이닝 :: 특별한 이차원 배열 2 (list(map(list, zip(*arr))))

이미지
              문제 설명  프로그래머스 URL https://school.programmers.co.kr/learn/courses/30/lessons/181831 프로그래머스 코딩 카테고리  코딩 기초 트레이닝 Day 25 - 특별한 이차원 배열 2 Lv.0 문제 내용  n × n 크기의 이차원 배열 arr이 매개변수로 주어질 때, arr이 다음을 만족하면 1을 아니라면 0을 return 하는 solution 함수를 작성해 주세요. 0 ≤ i, j < n인 정수 i, j에 대하여 arr[i][j] = arr[j][i] arr1  : [[5, 192, 33], [192, 72, 95], [33, 95, 999]] result1 : 1  arr2  : [[19, 498, 258, 587], [63, 93, 7, 754], [258, 7, 1000, 723], [587, 754, 723, 81]] result2  : 0 문제 이해 일반방식) 이중 for문을 돌면서, arr[i][j] = arr[j][i] 이 값이 같은지 확인  zip함수) arr를 unpacking(*arr)하고, zip함수로 행,열 바꿈   ----------------------------------- 일반 코드  이중 for문으로 값 확인 def solution(arr): for i in range(len(arr)) : for j in range(len(arr)) : if arr[i][j] != arr[j][i] : return 0 return 1 위의 코드 간결version def solution(arr): return int(all(arr[i][j] == arr[j][i] for i in range(len(ar...

이 블로그의 인기 게시물

KT 에이블스쿨 : 6-7차 미니프로젝트 - 제안서 기반 솔류션 기획 및 설계

KT 에이블스쿨 : 핀테크 아이디어 공모전

쿠팡 제품