본문 바로가기

Python50

[프로그래머스] H-Index /파이썬 /Python /정렬 💡solutions ) ✅ 처음 문제를 풀고 테스트케이스 몇개를 통과하지 못해서 질문하기를 참고하며 예외 상황을 처리해주었다. ✅ 총 세 가지 예외처리를 해주었는데 ① 모든 논문의 인용 횟수가 전체 논문 개수 보다 큰 경우 -> 논문의 수 리턴 ② 모든 논문의 인용 횟수가 0인 경우 -> 0 리턴 ③ 모든 논문의 인용 횟수가 동일한 경우 -> 논문의 수 리턴 🎫code ) def solution(citations): citations.sort(reverse = True) max_v = citations[0] min_v = citations[-1] # 세 가지 예외처리 if min_v > len(citations): # 모든 논문의 인용 횟수가 전체 논문 개수 보다 큰 경우 return len(citati.. 2020. 8. 13.
[프로그래머스] 기능개발/파이썬/python/스택, 큐 💡solutions ) ✅ 로직은 크게 두 파트로 나뉜다. ①남은 작업 일수를 구하기 ②일의 순서, 작업 일수를 고려해 배포 시 몇개의 기능을 배포하는 지 계산하기 ✅ 두 번째 파트에서 계속 오류가 발생했었는데, 다행히 극복. 해당 값에는 인덱스로 접근하고 처음 기준으로 잡는 인덱스를 start로 정의하고 업데이트 하며 작업 일수를 비교하는 것이 포인트 🎫code ) def solution(progresses, speeds): # 먼저 남은 작업 일수를 구해 리스트에 담는다 cnt_lst = [] for i in range(len(progresses)): # 진도율 100%에서 현재 진행된 완료율을 빼주고 tmp = (100 - progresses[i]) if (tmp % speeds[i]): # 하루 .. 2020. 8. 12.
[프로그래머스] 전화번호 목록 /파이썬 /python /해시 💡solutions ) ✅ 처음에 테스트케이스 8,9번만 통과하지 못해서 수정한 부분이 -> phone_book 리스트를 sort()로 정렬해주는 것이다. ✅ 정렬 메소드가 없는 상태에서 리스트에 1234, 123 순서로 전화번호가 들어 있다면 false를 리턴해야 하지만 true를 반환하게 되는 게 문제가 된다. 🎫code ) def solution(phone_book): phone_book.sort() for i in range(len(phone_book)): length = len(phone_book[i]) for j in range(i+1, len(phone_book)): tmp = phone_book[i] next = phone_book[j][0:length] print(tmp, next) if.. 2020. 8. 11.
[프로그래머스] 주식가격 /파이썬 /Python /스택 💡solutions ) ✅ 전체 길이 total을 구하고 prices배열에 인덱스로 접근해서 그 다음에 나오는 것들(next)와 값을 비교한다 ✅ tmp 보다 큰 값이 나오면 second 초만 계산, 작은 값이 나오면 초 계산 하고 break -> result 리스트에 담아주기 🎫code ) def solution(prices): result = [] total = len(prices) for i in range(total): tmp = prices[i] for j in range(i, total): next = prices[j] if tmp 2020. 8. 10.
[프로그래머스] 위장 /파이썬 /Python /해시 💡solutions ) ✅ clothes_dic이라는 딕셔너리 만들어서 종류별로 의사 개수를 카운트 단, 의상을 선택하지 않는 경우도 있으니 맨 처음 딕셔너리에 value값을 넣을 때는 +1 키워서 2를 저장 ✅ 마지막에는 모두 안 입은 경우 하나를 빼서 return 🎫code ) def solution(clothes): clothes_dic = {} cnt = 1 for i in clothes: tmp = i[1] if clothes_dic.get(tmp): clothes_dic[tmp] += 1 else: clothes_dic[tmp] = 2 for i in clothes_dic.values(): cnt *= i return cnt - 1 📌 description ) 문제출처 : https://pro.. 2020. 8. 9.
[프로그래머스] 괄호변환 /파이썬 / Python /카카오블라인드 💡solutions ) ✅ 이번 문제는 수행해야 하는 모든 과정이 나와있는 시뮬레이션 문제. 주어진 것들만 꼼꼼히 잘 챙겨서 로직을 짜면 맞출 수 있는 문제 ✅ 총 3가지 함수를 구현 ①문제에서 주어진 과정을 수행할 solution 함수 ②균형 잡힌 문자열인지 판별하여 u, v 문자열로 분리할 isBalance 함수 ③올바른 문자열인지 판별할 isRight 함수 🎫code ) def solution(p): result = "" if p == "": return p # 전체가 올바른 괄호 문자열이면 elif isRight(p) == True: return p else: # u, v로 문자열 나누기 u, v = isBalance(p) # u가 올바른 괄호 문자열이면 if isRight(u) == True: .. 2020. 8. 8.