본문 바로가기

Problem Solving/프로그래머스79

[프로그래머스 | 파이썬 / 자바스크립트] [3차] 압축(2018 KAKAO BLIND RECRUITMENT/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/17684 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(msg): answer = [] dic = {chr(i+ord("A")-1):i for i in range(1, 27)} idx = 27 checkMsg = ""#w for i in msg: checkMsg += i#w+c if checkMsg not in dic: answer.append(dic[checkMsg[:-1]]) dic[checkMsg] = idx.. 2023. 3. 11.
[프로그래머스 | 파이썬 / 자바스크립트] 롤케이크 자르기(연습문제/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/132265 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 from collections import Counter def solution(topping): answer = 0 toppingDic = Counter(topping)#사전 형식으로 (원소:원소갯수)가 저장된다. toppingSet = set() for i in topping: toppingDic[i] -= 1#사전에서는 -1로 토핑종류를 1감소시킨다. toppingSet.ad.. 2023. 3. 11.
[프로그래머스 | 파이썬 / 자바스크립트] 영어가 싫어요(코딩테스트 입문/ level 0) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/120894 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(numbers): alpha = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"] for i, j in zip(alpha, range(10)): numbers = numbers.replace(i, str(j)) return int(numbers) 더보기 def so.. 2023. 3. 10.
[프로그래머스 | 파이썬 / 자바스크립트] 오픈채팅방(2019 KAKAO BLIND RECRUITMENT/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42888 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(record): answer = [] dic = {} for i in record: arr = i.split() if arr[0] == "Enter" or arr[0] == "Change": dic[arr[1]] = arr[2] for i in record: arr = i.split() if arr[0] == "Enter": answer.append(dic[a.. 2023. 3. 6.
[프로그래머스 | 파이썬 / 자바스크립트] 과일 장수(연습문제/ level 1) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/135808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(k, m, score): answer = 0 arr = [] score.sort(reverse = True) for i in range(0, len(score), m): arr = score[i:i+m] if len(arr) == m: answer += min(arr) * m return answer 더보기 def solution(k, m, score): a.. 2023. 3. 5.
[프로그래머스 | 파이썬] 더 맵게(힙(Heap)/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 import heapq def solution(scoville, K): cnt = 0 heapq.heapify(scoville)#기존 리스트를 heap으로 변환 while scoville[0] < K:#heap의 최솟값이 K보다 작은 경우 heapq.heappush(scoville, heapq.heappop(scoville) + heapq.heappop(scoville) * 2)#힙.. 2023. 3. 3.
[프로그래머스 | 파이썬 / 자바스크립트] 주차 요금 계산(2022 KAKAO BLIND RECRUITMENT/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 전체 코드 import math def solution(fees, records): answer = [] temp = {} parking = {} for record in records: time, car, inout = record.split() if car not in temp: temp[car] = time else: if inout == "OUT": parkingTime = .. 2023. 3. 3.
[프로그래머스 | 파이썬 / 자바스크립트] 대충 만든 자판(연습문제/ level 1) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/160586 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(keymap, targets): answer = [0] * len(targets) dic = {} for i in keymap: for j in i: if j in dic:#keymap의 알파벳을 key로 하는 dict 원소가 존재한다면 if dic[j] > i.index(j)+1:#현재 인덱스보다 멀리 있는 키라면 dic[j] = i.index(j)+1#현.. 2023. 2. 28.
[프로그래머스 | 파이썬 / 자바스크립트] [1차] 뉴스 클러스터링(2018 KAKAO BLIND RECRUITMENT/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/17677 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(str1, str2): # 두글자씩 쌍 만들기. 알파벳이 아닌 글자가 포함된 경우 pass str1Arr = [str1[i:i+2].upper() for i in range(len(str1)-1) if str1[i:i+2].isalpha()] str2Arr = [str2[i:i+2].upper() for i in range(len(str2)-1) if str2.. 2023. 2. 28.
[프로그래머스 | 파이썬 / 자바스크립트] 연속 부분 수열 합의 개수(연습문제/ level 2) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(elements): arr = [i for i in elements] #길이1 arr.append(sum(elements)) #길이n for i in range(2, len(elements)): #길이 2 ~ n-1개의 부분수열 for j in range(len(elements)): hap = 0 if i + j > len(elements):#배열의 인덱스를.. 2023. 2. 28.
[프로그래머스 | 파이썬 / 자바스크립트] 이진수 더하기(코딩테스트 입문/ level 0) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/120885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(bin1, bin2): return bin(int(bin1, 2)+ int(bin2, 2))[2:] 1️⃣ int 함수 두 번째 인자에 2를 넣어 bin1, 2를 이진수로 인식시킨 후 덧셈을 수행한다. 2️⃣ 덧셈 수행 결과를 bin()으로 출력하고, 앞의 "0b"를 삭제하기 위해 슬라이싱을 진행했다. 💡 int(value, base) base에 진법(범위:.. 2023. 2. 28.
[프로그래머스 | 파이썬 / 자바스크립트] 유한소수 판별하기(코딩테스트 입문/ level 0) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/120878 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐍파이썬 def solution(a, b): a_arr = [] b_arr = [] # 1. 기약분수로 나타내기-분자, 분모의 소인수 확인, 동일한 소인수는 제거 i = 2 while a >= i: if a % i == 0: a //= i a_arr.append(i) else: i += 1 i = 2 while b >= i: if b % i == 0: b //= i if i in a_arr.. 2023. 2. 25.
반응형