Loading...

[Python] LeetCode - Letter Combinations of a Phone Number

https://leetcode.com/problems/letter-combinations-of-a-phone-number/ Letter Combinations of a Phone Number - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com # 외국 문제풀이 사이트인 LeetCode문제이다. 영어문제를 해석하면서 풀어야해서 영어실력 증진에도 도움이 되는 것 같다. # '백트래킹' 기초를 연습하기 위해 푼 문제이다. # class와 letterCombination..

[Python] 프로그래머스 - 도둑질

https://programmers.co.kr/learn/courses/30/lessons/42897 코딩테스트 연습 - 도둑질 도둑이 어느 마을을 털 계획을 하고 있습니다. 이 마을의 모든 집들은 아래 그림과 같이 동그랗게 배치되어 있습니다. 각 집들은 서로 인접한 집들과 방범장치가 연결되어 있기 때문에 인접한 programmers.co.kr # 5단계 문제라서 손을 안대고 있었는데, 내가 생각했던 '5단계'의 난이도는 아니었다.. # 16~20줄에서 dp테이블을 갱신하는 원리는 다음과 같다. i번째 집을 털 때 최댓값(dp[i])은 아래 두가지 케이스 중 큰 값이다. 1. (i-2)번째 집을 털고 현재 i번째 집을 터는경우 (dp[i-2] + money[i]) 2. i번째 집을 턴 경우(현재 i번째 ..

[Python] 프로그래머스 - 가장 큰 수

https://programmers.co.kr/learn/courses/30/lessons/42746 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr # 조건을 제대로 읽지 않아 엄청 어렵게 생각했던 문제이다. 처음에 정렬하는 방법은 제대로 생각했다. (가장 큰 숫자의 자리수에 맞춰 나머지 숫자들의 자리수를 맞춘다음 정렬하는 것) # 여기서 numbers의 원소가 0이상 1000이하라고 되어있는데, 이걸 읽지 않아서 가장 일일이 가장 큰 숫자의 ..

[Python] 프로그래머스 - n진수 게임

https://programmers.co.kr/learn/courses/30/lessons/17687 코딩테스트 연습 - [3차] n진수 게임 N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0 programmers.co.kr 2018 카카오 블라인드 코딩테스트에 출제된 문제이다. # 이 문제를 풀기위한 keyPoint는 다음과 같다. 1. convert함수를 통해 원하는 수를 원하는 진법으로 변경해줘야 한다. 2. 마지막 answer를 출력할땐 튜브의 차례에 해당하는 수만 뽑아낼 수 있어야 한다. # 20번째 줄에서 l이 10만 이상일때 break해주는 이유: t가 ..

[Python] 프로그래머스 - 파일명 정렬

https://programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 2018 카카오 블라인드 코딩테스트에 출제된 문제이다. # 문제가 복잡해보이고 정렬해야 할 것도 많아보이지만, head와 number만 잘 파싱해서 추출한 다음 정렬하면 되는 문제이다. # 카카오는 re모듈을 이용해 문자열을 파싱하는 문제가 많이 나오는 것 같다. import re def solution(files): answer = [] file =..

[Python] 프로그래머스 - 압축

https://programmers.co.kr/learn/courses/30/lessons/17684 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr # 전에 포스팅한 '방금그곡'과 같이 2018 카카오 블라인드 코딩테스트에 출제된 문제이다. 생각한 아이디어대로 짜봤는데 바로 통과되어서 놀랐다. # 4번째 줄처럼 dic을 선언하는 방식을 알게 되었고, 다른 사람들의 풀이를 보니 zip함수를 사용해 아래와 같이 선언하는 방법도 있다는 것도 알게 되었다. " dic= dict(zip("ABCDEFGHIJKLMNOPQRSTUVWXYZ",..

[Python] 프로그래머스 - 방금그곡

https://programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 2018 카카오 블라인드 코딩테스트 문제이다. 문제 지문이 길어서 문제 이해하는데도 오래걸렸고 문자열 처리가 꽤 까다로웠다. # 테스트케이스 2개가 자꾸 틀려서 꽤 시간을 잡아먹었는데, 알고보니 20~24줄 재생시간 구하는 알고리즘 때문이었다. # change함수처럼 #붙은 음들을 어떻게 처리해야하는지 아이디어와 실제로 구현하는 데도 시간이 많이 소..

[Python] 프로그래머스 - 영어 끝말잇기

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 # 코드가 좀 정리가 안되었긴 하지만 속도를 빠르게 하기위해 dictionary를 사..