문제풀기(63)
-
프로그래머스 : 큰 수 만들기
https://programmers.co.kr/learn/courses/30/lessons/42883 코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 이전 인덱스(start)부터 len(number) - 아직 남은 채워넣어야 할 문자열의 길이 까지 중에서 가장 큰 수를 answer에 넣고, 해당 인덱스 + 1을 start로 설정하는 방식으로 매 번 가장 큰 수를 찾아 넣으면 된다. 이 때, 시간 초과를 방지하기 위해, for문 내에서 가장 큰 수를 찾았는데 해당 수가 9이면 더 큰 수는 없기 때문에 바로 for문을 빠져 나오도록 한다. def solution(number, k): answer = '' want_length = len(number) - k number = list(numb..
2021.10.28 -
프로그래머스 : 2019 카카오 개발자 겨울 인턴십 - 불량 사용자
https://programmers.co.kr/learn/courses/30/lessons/64064 코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 programmers.co.kr length로 나누어서 아이디를 저장한다. 이를 통해 시간을 줄일 수 있다. 그리고 파이썬의 set과 dictionary를 적절히 사용해서 구현하면 된다. from itertools import product def solution(user_id, banned_id): answer = 1 length_dict = dict() count_banned = [[] f..
2021.10.23 -
프로그래머스 : 2018 KAKAO BLIND RECRUITMENT 1차 캐시
https://programmers.co.kr/learn/courses/30/lessons/17680
2021.10.23 -
프로그래머스 : 2018 카카오 Blind Recruitment 3차 방금 그곡
https://programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 간단하게 시키는대로 구현을 하고, 정답이 될 수 있는 후보들은 heap에다 넣어놓으면 쉽게 풀 수 있다. import heapq def solution(m, musicinfos): answer = [] for music in range(len(musicinfos)): start_time,end_time,song_name, plays = musicin..
2021.10.23 -
프로그래머스 : 영어 끝말잇기
https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0] programmers.co.kr 반복문을 돌리다가 주어진 조건을 만족하지 않으면 해당이 몇 번째 i인지 a에 저장하고..
2021.10.21 -
프로그래머스 : 2개 이하로 다른 비트
https://programmers.co.kr/learn/courses/30/lessons/77885 코딩테스트 연습 - 2개 이하로 다른 비트 programmers.co.kr 2진수로 변환했을 때, 다 1로 이루어져 있는 경우는 10111...의 꼴이 2개 이하로 비트가 다르면서 가장 작은 수이므로 다 1로 이루어져 있는 경우와 아닌 경우를 구분해서 시행한다. 1로 이루어져 있는 경우는, 오른쪽에서 왼쪽으로 이동해가면서 0을 만나면 1로 만나고, 해당 위치의 바로 오른쪽이 1이라 0으로 바꿀 수 있으면 바꿔준다. * 0일 때는 예외처리를 꼭 해줘야한다! def get_binary(n): answer = [] now = 2 while n>0: answer.append(n%now) n = n//now an..
2021.10.21