
문자열 뒤집기, 문자열 활용문자열을 활용한 문제를 풀어보았다.프로그래머스 12932간단하다고 생각했는데, 생각보다 시간이 오래 걸렸다.우선 최대한 간단한게 써야한다는 그런 생각이 들었고, 그러다보니 생각한대로 구현하는데 오래걸린 것 같다.리스트 컴프리헨션에 대한 이해가

99클럽 코테 스터디 2일차 TIL + 배열 -프로그래머스

문자열프로그래머스 12951우선, 오늘 문제를 풀 시간이 충분하지 않아서 급하게 풀었음에도 불구하고 권장 시간내에 풀지 못했다 -> 권장 시간안에 풀 수 있도록 연습이 필요할 것 같다JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자

해시프로그래머스 42577전화번호부(리스트) 에 적힌 전화번호(각 요소) 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하는 문제먼저 전화번호부를 정렬해서 오름차순으로 정리하였다반복문을 통해 앞의 요소로 시작하는지 확인하는 로직 (정렬했기 때문에 가능)항해9

채점 결과 정확성: 83.9 효율성: 0.0 합계: 83.9 / 100.0 > 사용자가 작성한 코드에서 주요한 문제는 func_scoville 함수를 통해 새로운 스코빌 지수를 계산한 후, deque 객체를 재정렬하는 과정입니다. 파이썬의 sorted 함수를 사용

프로그래머스 42628우선순위 큐가 할 연산 operations가 매개변수로 주어질 때, 모든 연산을 처리한 후 큐가 비어있으면 0,0 비어있지 않으면 최댓값, 최솟값을 return 하도록 solution 함수를 구현'I' 숫자 큐에 주어진 숫자를 삽입합니다.'D 1'

정렬프로그래머스 159994

정렬프로그래머스 42747

백준 10816

프로그래머스 84512간단히 가능한 모든 경우의 수를 다 체크해서 정답을 찾는 방법우선 완전탐색 기법으로 문제를 풀기 위해서는 다음과 같이 고려해서 수행한다.1) 해결하고자 하는 문제의 가능한 경우의 수를 대략적으로 계산한다.2) 가능한 모든 방법을 다 고려한다.3)

백준 10815첫째 줄: 상근이가 가진 카드의 개수 𝑁 : N (1 ≤ 𝑁 ≤ 500,000)둘째 줄 : 상근이가 가진 카드에 적힌 정수들셋째 줄: 확인해야 할 숫자의 개수 𝑀 (1 ≤ 𝑀 ≤ 500,000)넷째 줄: 확인해야 할 숫자 리스트정렬 + 선형 탐색최

\[리트코드WordFilter라는 클래스를 설계해야 합니다. 이 클래스는 주어진 단어 목록에서 특정 접두사(prefix)와 접미사(suffix)를 가진 단어를 효율적으로 찾을 수 있어야 합니다. 문제의 요구 사항은 다음과 같습니다:WordFilter(string\[]

백준\_촌수계산첫째줄 : 전체 사람의 수 n둘째줄: 촌수를 계산해야하는 서로 다른 두사람의 번호셋째줄 : 부모 자신들간의 관계의 개수 m넷째줄 : 부모 자식간의 관계를 나타내는 두 번호 x,y(앞에 나오는 번호 x는 뒤에 나오는 정수 y의 부모 번호) 두 사람의 친척

문제에서 볼 수 있듯이, 주변 영역이 1인지 0인지를 확인하여 '연결', '단지'인지를 구할 수 있다. 그래서 주변영역부터 살펴보는 bfs를 사용하여 문제를 풀어보았다앞뒤, 양옆의 숫자가 1인지 확인하기 위해 dx,dy 를 초기하였다bfs 를 구성하여서, nx,ny 가

프로그래머스 구멍보트사람들의 몸무게를 담은 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 return 하도록 solution 함수를 작성오름차순으로 정렬하고, 가장 작은 값과 가장

여러 숫자에게 K 개 수를 제거했을 때 얻을 수 있는 가장 큰 수를 구하는 함수 작성만들 수 있는 모든 조합을 리스트에 추가ValueError: too many values to unpack (expected 2)이 에러를 구글링 해보내, 저장할 값의 개수가 변수 개수

DP(다이나믹 프로그래밍) 은 복잡한 문제를 더 작은 단위의 하위 문제로 나누어 해결하는 알고리즘 설계 기법 문제 해결을 위해 알고리즘을 설계하는 방법, 접근 방식문제를 해결하기 위해 사용되는 절차적인 방법 또는 계획재귀적 호출은 하향식 접근을 사용 : 큰 문제를 작은

첫번째 항은 0, 두번째 항은 1 ,그 다음부터는 바로 전 두 항의 숫자의 합이 현재 항의 값이 된다기본 재귀적 풀이시간 복잡도는 함수가 한 번 호출되면 다시 두 번 호출되기 때문에 지수적으로 증가해 O(2^N)이 된다.반복 알고리즘시간 복잡도 O(n)동적 계획법부분

오늘의 학습 키워드 그리디 ‘각 단계에서 최적이라고 생각되는 것을 선택’ 해 나가는 방식으로 진행하여 최종적인 해답에 도달하는 알고리즘 그리디 vs DP DP가 하위 문제에 대한 최적의 솔루션을 찾은 다음, 이를 이용한 전역 최적 솔루션을 찾는 것이라면 , 그리디

프로그래머스 대충 만든 자판targets 을 보면서 입력 문제를 하나씩 가져오고문자문자의 한 글자씩 반복문으로 가져와서 (i)keymap 을 반복해서 해당 글자의 인덱스를 체크하는 구조만약에 index 를 비교했을 때 더 작은 index 가 있다면 그 인덱스 + 1 로

사전에 기본값을 설정해줘야 할 때defaultdict 클래스의 생성자로 기본값을 생성해주는 함수를 넘기면, 모든 키에 대해서 값이 없는 경우 자동으로 생성자의 인자로 넘어온 함수를 호출하여 그 결과값으로 설정defaultdict 클래스의 생성자로 int 함수를 넘긴 이

데크 첫번째 시도 시간 초과

문제에서 주어진 조건대로 특정 작업을 수행하는 걸 의미주로 2차원 리스트 형식으로 많이 주어진다get() 메서드는 딕셔너리에서 주어진 키(key)에 해당하는 값을 반환하는 메서드첫 번째 파라미터 : 찾고자하는 키(key), 두 번째 파라미터는 기본값만약 주어진 키(ke

프로그래머스 괄호 회전하기그 길이만큼 rotate 할 수 있는 것이기 문에 i 만큼 rotat 되도록 넣어주었다그리고 그렇게 rotate 된 문자열을 하나씩 가져와서 닫힌 괄호 - stack 비어있는지 확인, 비어있지 않으면 마지막 요소와 딕셔너리의 짝이 같은지 확인

리트 코드 300nums 가 빈 배열이면 return 0dp 를 nums 만큼 초기화i부터 하면서 , 그 전까지 j 까지 반복문 생성만약에 i가 j(앞에 있는 요소) 보다 크면 dp 설정미자막에 max 함수로 반환사실 Mid, Start, End 등을 활용해 이분탐색의