일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- time complexity
- Level2
- Stack
- 조합
- 프로그래머스
- 코딩
- 코딩테스트
- 시간복잡도
- 코테
- coding
- sql
- collections
- python
- CodingTest
- 연습문제
- 파이썬
- lambda
- counter
- lv4
- mysql
- Queue
- coding test
- join
- 데이터분석
- programmers
- level4
- BFS
- import re
- itertools
- 완전탐색
- Today
- Total
목록Algorithm/Python (86)
ror_coding
키패드 위 해당 번호가 있는 index를 구하기 위해 np.where()을 사용! Question 순서대로 누를 번호가 담긴 배열 numbers, 왼손잡이인지 오른손잡이인 지를 나타내는 문자열 hand가 매개변수로 주어질 때, 각 번호를 누른 엄지손가락이 왼손인 지 오른손인 지를 나타내는 연속된 문자열 형태로 return 하도록 solution 함수를 완성해주세요. Code import numpy as npdef solution(numbers, hand): result = '' l, r = [3,0], [3,2] phone = [[1,2,3],[4,5,6],[7,8,9],['*',0,'#']] matrix = np.array(phone,dtype='object') # object를..
list의 행과 열을 바꾸기 위해 numpy 를 이용해서 transpose 해주고 stack을 이용해서 답 구하기 ! Question 게임 화면의 격자의 상태가 담긴 2차원 배열 board와 인형을 집기 위해 크레인을 작동시킨 위치가 담긴 배열 moves가 매개변수로 주어질 때, 크레인을 모두 작동시킨 후 터트려져 사라진 인형의 개수를 return 하도록 solution 함수를 완성해주세요. Code import numpy as npdef solution(board, moves): answer = 0 stack = [] board = np.array(board).T board = (board).tolist() board = [[i for i in row if i!=0] for..
Counter 에서 값들을 기준으로 정렬하는 코드로 .most_common() 이 있다! Question 한 상자에 담으려는 귤의 개수 k와 귤의 크기를 담은 배열 tangerine이 매개변수로 주어집니다. 귤 k개를 고를 때 크기가 서로 다른 종류의 수의 최솟값을 return 하도록 solution 함수를 작성해주세요. Code from collections import Counterdef solution(k, tangerine): cnt = 0 a = Counter(tangerine) for item, count in a.most_common(): k -= count cnt += 1 if k now meOn my github
최대 2명 태울 수 있으니 (작은값 + 큰값) 가능하면 넘기고 안 되면 큰 값 혼자 넘긴다.Question 구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다.사람들의 몸무게를 담은 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 return 하도록 solution 함수를 작성해주세요. Code def solution(people, limit): cnt = 0 people = sorted(people,reverse=True) for i in people: total = i if total + people[-1] now meOn my github
시간 초과로 stack 이용해서 O(n)로 풀기. Question 상수에게 전해지는 재료의 정보를 나타내는 정수 배열 ingredient가 주어졌을 때, 상수가 포장하는 햄버거의 개수를 return 하도록 solution 함수를 완성하시오. Code : Time Complexity O(n) def solution(ingredient): answer = 0 stack = [] for i in ingredient: # O(n) stack.append(i) # O(1) if stack[-4:] == [1,2,3,1] : answer += 1; del stack[-4:] # O(1) return answer Code 2 : Time Complexi..
list out of range 가 너무 많이 떠서 index 활용 부분 고민이 컸다.쉬워보이지만 은근 고려해야 할게 많아서 오래 걸린 문제.. Question 공원을 나타내는 문자열 배열 park, 로봇 강아지가 수행할 명령이 담긴 문자열 배열 routes가 매개변수로 주어질 때, 로봇 강아지가 모든 명령을 수행 후 놓인 위치를 [세로 방향 좌표, 가로 방향 좌표] 순으로 배열에 담아 return 하도록 solution 함수를 완성해주세요. Point way를 dictionary로 만들 때 value에 tuple을 넣어서 상하좌우를 표시.공원(칸)을 넘어가거나 가는 길에 'X'가 있으면 되돌아 옴.가는 길 index를 [ pre_loc : loc + 1] 으로 하지 않고 ( [2:0] 등으로 입력되면 ..
from collections import Counter 사용하기.같은 숫자 여러 개일 때 개수로 한 번에 answer에 담아주기 때문에 시간 초과가 일어나지 않는다 ! Question 두 정수 X, Y의 임의의 자리에서 공통으로 나타나는 정수 k(0 ≤ k ≤ 9)들을 이용하여 만들 수 있는 가장 큰 정수를 두 수의 짝꿍이라 합니다(단, 공통으로 나타나는 정수 중 서로 짝지을 수 있는 숫자만 사용합니다). X, Y의 짝꿍이 존재하지 않으면, 짝꿍은 -1입니다. X, Y의 짝꿍이 0으로만 구성되어 있다면, 짝꿍은 0입니다.두 정수 X, Y가 주어졌을 때, X, Y의 짝꿍을 return하는 solution 함수를 완성해주세요. Code (After) from collections import Counter..
같은 의미로 보이지만 코드 위치에 따라 결과가 달라지는 경우이다. Question 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을 return 하도록 solution 함수를 작성해주세요. Code아래 주석처럼 체육복을 도난 당한 자기 자신을 여분(reserve)을 이용해 1로 되돌리는 코드를 따로 for문을 이용해 만들게 되면 테스트 케이스 몇 군데 에서 틀린 답이 나오게 된다.따라서 체육복 도난과 동시에 여분이 있는 것은 0으로 만들지 않고 상쇄시키는 코드를 짜야한다.def solution(n, lost, reserve): stu..