본문 바로가기

Python15

[프로그래머스][파이썬] 할인 행사 https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(want, number, discount): answer = 0 dic1 = {} #정현이가 원하는 제품별 수량 for i in range(len(number)): dic1[want[i]] = number[i] #10일간 할인하는 제품별 수량 for i in range(0, len(discount)-9): dic2 = {} for j in range(i, i+10): if.. 2023. 12. 7.
[프로그래머스][파이썬] n^2 배열 자르기 https://school.programmers.co.kr/learn/courses/30/lessons/87390 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(n, left, right): answer = [] for i in range(left, right+1): x = i // n #몫 y = i % n #나머지 answer.append(max(x,y)+1) #몫과 나머지 중 큰 값 return answer 인덱스를 n으로 나눴을 때, 몫과 나머지 중 큰 값에 1을 더한 값으로 1차원 배열이 구성되는 규칙이 있었다. 처음에는 .. 2023. 12. 6.
[프로그래머스][파이썬] 괄호 회전하기 https://school.programmers.co.kr/learn/courses/30/lessons/76502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(s): answer = 0 for i in range(len(s)): arr = [] s = s[1:] + s[0] #왼쪽으로 한 칸씩 이동 if s[0] == '[' or s[0] == '(' or s[0] == '{': for item in s: if len(arr) == 0: arr.append(item) else: if arr[-1] == '[' and item ==.. 2023. 12. 6.
[프로그래머스][파이썬] 연속 부분 수열 합의 개수 https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(elements): arr = elements * 2 #[7,9,1,1,4,7,9,1,1,4] s = set() #수열의 길이별 합 for i in range(len(elements)): for j in range(len(elements)): s.add(sum(arr[j:j+i+1])) return len(s) elements([7,9,1,1,4]) 배열에 2를 곱하여 [.. 2023. 12. 5.
[프로그래머스][파이썬] 귤 고르기 https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(k, tangerine): answer = 0 arr = [0 for i in range(max(tangerine))] #귤의 크기별 개수 저장할 정수 리스트 for item in tangerine: arr[item-1] += 1 arr.sort(reverse=True) #개수가 많은 순으로 정렬 for item in arr: k -= item answer += 1 if k 2023. 12. 5.
[프로그래머스][파이썬] 이웃한 칸 https://school.programmers.co.kr/learn/courses/30/lessons/250125 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(board, h, w): answer = 0 n = len(board) #board 길이 저장 dh = [0, 1, -1, 0] #h의 변화량을 저장할 정수 리스트 dw = [1, 0, 0, -1] #w의 변화량을 저장할 정수 리스트 for i in range(0, 4): h_check = h + dh[i] #체크할 칸의 h 좌표 w_check = w + dw[i] #체크.. 2023. 11. 29.