일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 코딩
- 프로그래머스
- Queue
- time complexity
- 연습문제
- python
- collections
- Stack
- CodingTest
- Level2
- lv4
- sql
- coding
- coding test
- 조합
- import re
- 파이썬
- 시간복잡도
- lambda
- counter
- 완전탐색
- 코딩테스트
- mysql
- 데이터분석
- itertools
- level4
- join
- BFS
- programmers
- 코테
- Today
- Total
목록python (73)
ror_coding
from functools import reduce (누적 함수 적용)partial (함수의 일부 인수 고정해서 새로운 함수 생성)lru_cache (함수의 실행 결과 캐싱하여 동일한 입력에 대해 빠르게 반환) reducefrom functools import reducefrom math import gcd# 리스트의 모든 값 곱하기nums = [1, 2, 3, 4]= reduce(lambda x, y: x * y, nums) # 24= reduce(gcd, nums) # 모든 원소의 최대공약수 구함. partialfrom functools import partial# 기본 인자를 고정한 함수 생성def power(base, exp): return base ** expsquare = partial(..
문제에서 요구한 풀이 방식을 따라서 풀자. Question "균형잡힌 괄호 문자열" p가 매개변수로 주어질 때, 주어진 알고리즘을 수행해 "올바른 괄호 문자열"로 변환한 결과를 return 하도록 solution 함수를 완성해 주세요.1. 입력이 빈 문자열인 경우, 빈 문자열을 반환합니다. 2. 문자열 w를 두 "균형잡힌 괄호 문자열" u, v로 분리합니다. 단, u는 "균형잡힌 괄호 문자열"로 더 이상 분리할 수 없어야 하며, v는 빈 문자열이 될 수 있습니다. 3. 문자열 u가 "올바른 괄호 문자열" 이라면 문자열 v에 대해 1단계부터 다시 수행합니다. 3-1. 수행한 결과 문자열을 u에 이어 붙인 후 반환합니다. 4. 문자열 u가 "올바른 괄호 문자열"이 아니라면 아래 과정을 수행합니다..
특징 잘 파악해서 풀기 Question n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람이 있다면 다음과 같이 6개의 방법이 있습니다.[1, 2, 3] [1, 3, 2] [2, 1, 3] [2, 3, 1] [3, 1, 2] [3, 2, 1] 사람의 수 n과, 자연수 k가 주어질 때, 사람을 나열 하는 방법을 사전 순으로 나열 했을 때, k번째 방법을 return하는 solution 함수를 완성해주세요. Point k -= 1 : 1부터 시작하는 인덱스를 0으로 바꿔주기 위해 1을 빼줍니다. f = fact(len(p)-1) : 현재 남아 있는 숫자의 수가 m 이..
BFS 문제..!!! BFS 지금 3번째 틀리는 건데.. 조만간 복습으로 다시 풀어야겠다. Question 지도를 나타내는 문자열 배열 maps가 매개변수로 주어질 때, 각 섬에서 최대 며칠씩 머무를 수 있는지 배열에 오름차순으로 담아 return 하는 solution 함수를 완성해주세요. 만약 지낼 수 있는 무인도가 없다면 -1을 배열에 담아 return 해주세요. Code from collections import dequedef solution(maps): answer = [] directions = [(-1,0),(1,0),(0,-1),(0,1)] rows, cols = len(maps), len(maps[0]) grid = [list(row) for row in maps]..
datetime 을 이용하여 시간 차이 '분'을 구하는 방법과 요구하는 길이만큼 멜로디를 늘려 풀기 ! Question 네오는 자신이 기억한 멜로디를 가지고 방금그곡을 이용해 음악을 찾는다. 그런데 라디오 방송에서는 한 음악을 반복해서 재생할 때도 있어서 네오가 기억하고 있는 멜로디는 음악 끝부분과 처음 부분이 이어서 재생된 멜로디일 수도 있다. 반대로, 한 음악을 중간에 끊을 경우 원본 음악에는 네오가 기억한 멜로디가 들어있다 해도 그 곡이 네오가 들은 곡이 아닐 수도 있다. 그렇기 때문에 네오는 기억한 멜로디를 재생 시간과 제공된 악보를 직접 보면서 비교하려고 한다. 다음과 같은 가정을 할 때 네오가 찾으려는 음악의 제목을 구하여라.방금그곡 서비스에서는 음악 제목, 재생이 시작되고 끝난 시각, 악보를..
import datetimedatetime.date(2016,a,b).strftime('%a').upper() 요일 관련%a : 요일의 약자 (영어, 예: Mon, Tue)%A : 요일의 전체 이름 (영어, 예: Monday, Tuesday)%w : 요일의 숫자 (0 = 일요일, 1 = 월요일, ..., 6 = 토요일)날짜 관련%d : 날짜 (01부터 31까지의 2자리 숫자)%b : 월의 약자 (영어, 예: Jan, Feb)%B : 월의 전체 이름 (영어, 예: January, February)%m : 월 (01부터 12까지의 2자리 숫자)%y : 연도 (2자리, 예: 23 for 2023)%Y : 연도 (4자리, 예: 2023)%j : 해당 연도의 일수 (001부터 366까지)%U : 연도의 주차 (일..
구현 문제로, 가능한 경우의 수를 어떻게 나누면 될지 정하는게 중요하다. Question 각 손님들이 주문한 단품메뉴들이 문자열 형식으로 담긴 배열 orders, "스카피"가 추가하고 싶어하는 코스요리를 구성하는 단품메뉴들의 갯수가 담긴 배열 course가 매개변수로 주어질 때, "스카피"가 새로 추가하게 될 코스요리의 메뉴 구성을 문자열 형태로 배열에 담아 return 하도록 solution 함수를 완성해 주세요. [제한사항]orders 배열의 크기는 2 이상 20 이하입니다.orders 배열의 각 원소는 크기가 2 이상 10 이하인 문자열입니다.각 문자열은 알파벳 대문자로만 이루어져 있습니다.각 문자열에는 같은 알파벳이 중복해서 들어있지 않습니다.course 배열의 크기는 1 이상 10 이하입니다.c..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/kxfLX/btsLtHzLsz6/CWWe3KcPfxDfKDOQUjH2fk/img.png)
Dijkstra's Algorithm 원리로 풀기! (heapq 를 이용해서 자동 정렬되는 값들을 사용한다) Question 위 그림에서 1번 마을에 있는 음식점은 [1, 2, 4, 5] 번 마을까지는 3 이하의 시간에 배달할 수 있습니다. 그러나 3번 마을까지는 3시간 이내로 배달할 수 있는 경로가 없으므로 3번 마을에서는 주문을 받지 않습니다. 따라서 1번 마을에 있는 음식점이 배달 주문을 받을 수 있는 마을은 4개가 됩니다. 마을의 개수 N, 각 마을을 연결하는 도로의 정보 road, 음식 배달이 가능한 시간 K가 매개변수로 주어질 때, 음식 주문을 받을 수 있는 마을의 개수를 return 하도록 solution 함수를 완성해주세요.제한사항마을의 개수 N은 1 이상 50 이하의 자연수입니다.roa..