[Programmers][Python] Lv.0 세 개의 구분자
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/181862 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]첫번째 풀이import redef solution(myStr): answer = re.compile(r'[a-c]').sub(' ',myStr).strip().split() if len(answer) == 0: return ["EMPTY"] return answer 두번째 풀이import redef solution(myStr): ret..
[Programmers][Python] Lv.0 진료순서 정하기
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/120835 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]첫번째 풀이- 내림차순 정렬 후, 인덱스 함수로 인덱스와 값을 딕셔너리(d)에 저장해준다. - emergency 배열의 값과 키가 같으면 answer 배열에 인덱스 값을 추가해준다. >> 딕셔너리를 사용했으나, 인덱스 함수 사용한 점, 이중 반복문을 사용한 점에서 시간복잡도가 O(n^2)가 나온다. def solution(emergency): answer, d = [], {} ..
[Programmers][Python] Lv.2 주차 요금 계산
·
🚩 Coding Test/Programmers
[문제]2022 KAKAO BLIND RECRUITMENThttps://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]from math import ceil# 시간 계산 함수def cal(s, e): sh, sm = map(int, s.split(":")) eh, em = map(int, e.split(":")) return (eh - sh) * 60 + (em - sm)def solution(fees, records): # 기본..
[Programmers][Python] Lv.0 숨어있는 숫자의 덧셈(2)
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/120864 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]정규식을 이용해서 알파벳들은 공백으로 변경해주고, 공백을 기준으로 분리해서 int로 변환 후 덧셈해주었다. import redef solution(s): return sum(map(int, re.compile(r'[a-zA-Z]').sub(' ', s).split())) 다른 풀이이 과정을 좀더 간략하게 할 수 있는 방법으로 re.findall('찾을 문자', 문자열) 이 있었..
[Programmers][Python] Lv.2 점프와 순간 이동
·
🚩 Coding Test/Programmers
[문제]Summer/Winter Coding(~2018)https://school.programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]예제들로 시뮬레이션 해보면 계속 2로 나누어주며 나오는 나머지들의 합이라는 것을 알 수 있다. def solution(n): answer = 0 while n > 0: answer += n % 2 n //= 2 return answer 다른 풀이- n을 2진수로 변환했을 때 1의 개수가 나..
[Programmers][Python] Lv.2 N개의 최소공배수
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/12953# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]첫 번째 풀이 - gcd 함수 라이브러리를 안 쓰고 풀고 싶어서 유클리드 호제법을 구현했다. - arr 길이가 1인 경우부터 나눠서 구현했다. def gcd(a, b): if b > a: a, b = b, a while b != 0: a, b = b, a % b return adef solution(arr): if len(arr) == ..
[Programmers][Python] Lv.2 기능개발
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]1. 각 기능마다 며칠이 걸리는지 확인하는 배열 생성 [7일, 4일, 9일]2. 1번 기능이 배포하는 날부터 몇 개의 기능이 배포되는지 출력 [2개, 1개]import mathdef solution(progresses, speeds): answer, needs = [], [] # needs : 며칠이 걸리는지 저장하기 위한 배열 # step 1 for i in ..
[Programmers][Python] Lv.2 튜플
·
🚩 Coding Test/Programmers
[문제]2019 카카오 개발자 겨울 인턴십https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드]- 처음에는 한 곳에 다 추가해서 튜플로 변경하고 set 함수로 중복 숫자를 제거해주려고 했는데 잘 안 됐다. - 먼저 중괄호를 기준으로 숫자를 분리해주었다. 그리고 다시 콤마로 분리해서 리스트화 해주었다. - 길이가 짧은 것부터 정렬해서 답에 추가해줌 def solution(s): s = s[2:-2].split("},{") s = [li..
[Programmers][Python] Lv.2 최솟값 만들기
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   [코드]- 간단하게 정렬해주고, 가장 작은 값과 큰 값을 곱해서 더해주면 최솟값이 된다. def solution(a,b): answer = 0 a.sort() b.sort(reverse=True) for i in range(len(a)): answer += a[i] * b[i] return answer
[Programmers][Python] Lv.1 콜라 문제
·
🚩 Coding Test/Programmers
[문제]https://school.programmers.co.kr/learn/courses/30/lessons/132267https://school.programmers.co.kr/learn/courses/30/lessons/72410 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  [코드] def solution(a, b, n): answer = 0 while n >= a: answer += (n//a) * b n = n % a + (n//a) * b return answer