문제 https://school.programmers.co.kr/learn/courses/30/lessons/157342 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 DATEDIFF함수와 AVG, ROUND 함수를 사용해 풀이 당일부터 1일이기 때문에 DATEDIFF 값에 +1해줌 코드 SELECT CAR_ID, ROUND(AVG(1+DATEDIFF(END_DATE, START_DATE)),1) AS AVERAGE_DURATION FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP BY CAR_ID HAVING A..
프로그래머스 풀이
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 조건에 부합하는 다음 큰 수가 나올 때까지 반복함. 코드 def solution(n): next_num = n while True: next_num += 1 if bin(n)[2:].count('1') == bin(next_num)[2:].count('1'): return next_num
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12945 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 시간 효율을 위해 이전값, 이전전값 을 num까지 갱신해가며 풀이 코드 1) 리스트 사용 def solution(num): dp = [0 for _ in range(num+1)] dp[1] = 1 dp[2] = 1 for i in range(3, len(dp)): dp[i] = dp[i-1] + dp[i-2] return dp[-1]%1234567 2) 리스트 사용 X def so..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/164672 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 CASE~ THEN 문을 사용하여 STATUS별로 문자열 지정해줌. 나머지는 코드 참조,, 코드 SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, CASE WHEN STATUS = 'SALE' THEN '판매중' WHEN STATUS = 'RESERVED' THEN '예약중' WHEN STATUS = 'DONE' THEN '거래완료' END AS STAT..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12924 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 효율성 테스트를 한번에 못풀어서 다른 사람의 힌트를 참조함.. 투포인터로 접근 연속된 숫자의 합이기 때문에 x를 시작점으로 두고 y를 늘려가며 합을 확인함. 합이 num보다 커지면 x를 한칸 오른쪽으로 밀면 합-1되기 때문에 새로운 경우의 수가 됨 이런식으로 포인터 x,y를 옮겨가며 모든 경우를 체크 코드 def solution(num): res = 0 for x in range(..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/70129 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 bin 함수 활용해서 단순 구현 코드 def solution(s): res = [0,0] while s!='1': new_str = s.replace('0', '') res[0] += 1 res[1] += (len(s) - len(new_str)) s = str(bin(len(new_str)))[2:] return res
문제 https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 한줄씩 순회하면서 공백 이후에 오는 글자만 UPPER() 코드 def solution(s): res = s[0] if s[0].isdigit() else s[0].upper() ex = s[0] for char in s[1:]: if ex == ' ' and not char.isdigit(): char = char.upper() else: char = char.lower() res..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/157343 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 아래 코드 참조 코드 SELECT * FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%네비게이션%' ORDER BY CAR_ID desc;