프로그래머스 20

[프로그래머스/Python] 붕대 감기

https://school.programmers.co.kr/learn/courses/30/lessons/250137?language=python3 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr def solution(bandage, health, attacks): answer = health attack_num, t = 0, 0 cnt = 0 if cnt == attacks[attack_num][0]: answer -= attacks[attack_num][1] attack_num += 1 if ans..

[프로그래머스/Python] 신규 아이디 추천

문제 https://school.programmers.co.kr/learn/courses/30/lessons/72410 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정규식을 사용하자! 2024.04.15 - [Python] - 정규식(regular expression) 정규식(regular expression) re모듈을 통해 사용 import re 문자열에 대한 연산에 사용. 문자열 패턴 표현, 문자열 수정, 분할 많이 쓰는 패턴 패턴 설명 ^패턴 이 패턴으로 시작해야 함 패턴$ 이 패턴으로 끝나야 함 패턴1|패턴2 dogfoot1.tistory.co..

[프로그래머스/Python] 다트 게임

문제 https://school.programmers.co.kr/learn/courses/30/lessons/17682 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정규식을 사용하자! 2024.04.15 - [Python] - 정규식(regular expression) 정규식(regular expression) re모듈을 통해 사용 import re 문자열에 대한 연산에 사용. 문자열 패턴 표현, 문자열 수정, 분할 많이 쓰는 패턴 패턴 설명 ^패턴 이 패턴으로 시작해야 함 패턴$ 이 패턴으로 끝나야 함 패턴1|패턴2 dogfoot1.tistory.co..

[프로그래머스/Python] 야근 지수

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr n시간 야근 하는 동안 야근 지수를 최소화하여 야근 지수 제곱을 리턴 n시간 안에 작업량을 다 끝내면(작업량 합이 n보다 작거나 같으면) 0을 리턴 sum(works)

[프로그래머스/Python] 콜라츠 추측

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12943 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 재귀 global cnt cnt = 0 def solution(num): global cnt if cnt > 500: return -1 if num == 1: return cnt if num%2 == 0: cnt += 1 return solution(num//2) else: cnt += 1 return solution(num*3 + 1) 2. 반복문 def solution(num): c..

[프로그래머스/Python] 베스트 앨범

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42579#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr genres: 음악 장르 plays: 재생 횟수 음악 장르를 key, 장르에 대한 전체 재생 횟수를 value로 딕셔너리를 만든다 def solution(genres, plays): answer = [] dic = {} #장르에 대해서 한 번 d = {} for i in range(len(genres)): d[genres[i]] = d.get(genres[i], 0) + plays[i..

[프로그래머스/Python] 기능개발

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 큐 사용 남은 퍼센트 리스트에 저장 def solution(progresses, speeds): answer = [] #몇 퍼센트 남았는지: 100-progresses percent = [100-i for i in progresses] 배포 가능 날짜 세기 percent : 남은 퍼센트 speeds : 하루에 끝낼 수 있는 퍼센트 percent // speeds 나머지가 있으면 +1 ,..

[프로그래머스/Python] 햄버거 만들기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1 2 3 1 순서가 되면 +1씩 해서 총 카운트 수를 리턴 1. 스택 사용 재료를 하나씩 스택에 넣다가 재료가 1이면 스택에 쌓인 3개를 본다 3개가 1 2 3이면 카운트 def solution(ingredient): #1 2 3 1 answer = 0 stk = [] for i in ingredient: if i == 1: if stk[-3:] == [1, 2, 3]: del stk[-..

[프로그래머스/Python] 최빈값 구하기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120812 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 가장 많이 들어 있는 숫자를 리턴. 똑같이 많으면 -1 리턴 1. 딕셔너리 사용 딕셔너리 value로 sort() 딕셔너리의 .items() 이용 .items()를 다시 list로 바꾼다(튜플 형태로 리스트에 저장된다) sort()를 사용한다. key = lambda x:x[1] 파라미터를 사용 def solution(array): dic = {} for i in set(array): di..

카테고리 없음 2024.01.11

[프로그래머스/Python] 카드 뭉치

문제 https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 각 카드 뭉치 중 맨 앞의 카드만 사용하여 goal을 만들 수 있으면 Yes 리턴, 아니면 No 리턴 1. deque() 라이브러리 from collections import deque deque()를 이용하여 스택과 큐처럼 이용할 수 있다. deque() 생성 queue = deque() queue = deque([1,2,3,4,5]) deque() 함수 .appendleft(x) 맨 앞..