Loading...

[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/12985 코딩테스트 연습 - 예상 대진표 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N programmers.co.kr mid를 이분탐색으로 절반씩 옮겨가며, mid기준으로 같은쪽에 있으면 이분탐색을 계속 돌리고 서로 다른 쪽에 있으면 cnt를 출력하는 식으로 코드를 짰다. import math def solution(n, a, b): def binary_search(left, right, cnt): global answer # 이분 탐색 if left ..

[Python] 프로그래머스 - 괄호 회전하기

https://programmers.co.kr/learn/courses/30/lessons/76502?language=python3 코딩테스트 연습 - 괄호 회전하기 programmers.co.kr 월간 코드 챌린지(4월)에 출제된 문제이다. # check함수는 올바른 괄호인지 판별하는 함수이다. 올바른 괄호인지 판단하는 문제는 스택을 공부할 때 대표적으로 푸는 문제라 함수를 짜는데 어려움은 없다. # input값을 deque에 넣고 ip의 길이만큼 rotate(-1)을 해준다. (왼쪽으로 한칸씩 밈) 만약 check(ip)가 True이면 올바른 괄호이므로 answer에 1을 증가시켜준다. from collections import deque def solution(ip): def check(s): st..

[Python] 프로그래머스 - 로또의 최고 순위와 최저 순위

programmers.co.kr/learn/courses/30/lessons/77484?language=python3 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 최근에 진행된 "2021 Dev-Matching: 웹 백엔드 개발자" 코딩테스트에 출제된 문제이다. def solution(lottos, win_nums): rank = {6: 1, 5: 2, 4: 3, 3: 4, 2: 5, 1: 6, 0: 6} cnt = 0 super = lottos.count(0..