Problem solving/문제 풀이 - 2023.02.09 [파이썬] 프로그래머스 n^2 배열 자르기 풀이 - 문제 확인 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 $N = 10^7$이기 때문에 2 차원 배열을 선언하고, 각 성분에 값을 할당할 경우 시간 초과가 발생한다. 따라서 별도의 규칙을 찾아서 문제를 풀려고 했는데, 고민해도 생각이 안나서 다른 사람의 풀이를 참고해서 풀었다. 2 차원 행렬을 1 차원으로 펼칠 경우, 각 성분은 n으로 나눈 몫과 나머지로 표현할 수 있다. # n이 크기 때문에, n**2만 해도 시간 초과 발생! # 규칙을 찾아야 함 # 1 2 3 2 2 3 3 3 3 # (0,0) (0,1) (0,2) (1, 0) (1, 1) (1, 2) (2, 0) (2, 1) (2, 2) # 행렬 : 몫, 나머지로 표현된다고 생각 가능! def solution(n, left, right): answer = [max(i // n, i % n) + 1 for i in range(left, right + 1)] return answer 참고 풀이 [프로그래머스] n^2 배열 자르기 (level2, python) 문제 설명 정수 n, left, right가 주어집니다. 다음 과정을 거쳐서 1차원 배열을 만들고자 합니다. n행 n열 크기의 비어있는 2차원 배열을 만듭니다. i = 1, 2, 3, ..., n에 대해서, 다음 과정을 반복합니다 hoons-dev.tistory.com 공유하기 게시글 관리 구독하기싶만생각 Contents 당신이 좋아할만한 콘텐츠 [파이썬] 프로그래머스 귤 고르기 풀이 2023.02.10 [파이썬] 프로그래머스 [1차] 뉴스 클러스터링 풀이 2023.02.09 [파이썬] 프로그래머스 튜플 풀이 2023.02.08 [파이썬] 프로그래머스 위장 풀이 2023.02.08 댓글 0 + 이전 댓글 더보기