본문 바로가기

전체 글82

[자료구조] DFS 이란? 깊이 우선 탐색 (DFS) 이란? 깊이 우선 탐색(DFS, Depth-First Search)은 그래프와 트리와 같은 자료구조에서 사용되는 탐색 알고리즘 중 하나입니다. 이 알고리즘은 어떤 시작 노드에서 출발하여 가능한 한 깊이 들어가서 더 이상 진행할 수 없을 때까지 탐색을 진행한 후, 다음 분기로 넘어가는 방식을 취합니다. DFS의 주요 특징 1. 재귀 또는 스택 사용 DFS는 주로 재귀 함수 호출 또는 스택을 사용하여 구현됩니다. 각 노드를 방문하면 스택에 현재 노드를 추가하고, 더 이상 진행할 수 없을 때 스택에서 이전 노드로 돌아갑니다. 2. 깊이 우선 DFS는 한 분기를 깊이 탐색하며, 더 이상 진행할 수 없을 때까지 계속 진행합니다. 따라서 가장 깊이 있는 노드를 먼저 탐색하고 나중에 돌아옵.. 2024. 1. 23.
[주식] 엔벨로프(Envelope)를 활용한 매매기법 - 보조지표 편 엔벨로프(Envelope) 보조지표는 주식 트레이딩에서 자주 사용되는 기술적 분석 도구 중 하나입니다. 이 지표는 주가의 이동 평균선을 중심으로 상하한선을 설정하여 주가의 변동 폭을 시각적으로 보여주며, 주가의 과매수 또는 과매도 상태를 판단하는 데 도움을 줍니다. 엔벨로프는 일정 기간 동안의 이동 평균선 주위에 상위와 하위의 두 개의 밴드를 설정합니다. 이 밴드는 보통 이동 평균선으로부터 일정 비율만큼 떨어져 있습니다. 이 비율은 트레이더의 전략이나 분석하는 주식의 특성에 따라 달라질 수 있습니다. 엔벨로프 보조지표 활용법 1. 매수 신호 1) 주가가 하한선에 접근하거나 하한선을 밑돌 때 매수 신호로 간주할 수 있습니다. 2) 이는 주가가 과매도 상태에 있다는 것을 나타내며, 반등 가능성이 높아집니다... 2024. 1. 22.
[백준] 13305번 - 주유소 - 그리디 알고리즘 문제 어떤 나라에 N개의 도시가 있다. 이 도시들은 일직선 도로 위에 있다. 편의상 일직선을 수평 방향으로 두자. 제일 왼쪽의 도시에서 제일 오른쪽의 도시로 자동차를 이용하여 이동하려고 한다. 인접한 두 도시 사이의 도로들은 서로 길이가 다를 수 있다. 도로 길이의 단위는 km를 사용한다. 처음 출발할 때 자동차에는 기름이 없어서 주유소에서 기름을 넣고 출발하여야 한다. 기름통의 크기는 무제한이어서 얼마든지 많은 기름을 넣을 수 있다. 도로를 이용하여 이동할 때 1km마다 1리터의 기름을 사용한다. 각 도시에는 단 하나의 주유소가 있으며, 도시 마다 주유소의 리터당 가격은 다를 수 있다. 가격의 단위는 원을 사용한다. 예를 들어, 이 나라에 다음 그림처럼 4개의 도시가 있다고 하자. 원 안에 있는 숫자는.. 2024. 1. 22.
[투자정보] 오픈AI, 자체 인공지능(AI) 반도체 개발 추진한다. AI 기술 발전으로 AI 반도체의 수요가 급증하고 있습니다. 현재 AI 반도체 시장은 엔비디아가 대부분을 차지하고 있으며, 이들 반도체는 고가이면서 공급이 제한적입니다. 오픈AI의 이러한 움직임은 AI 모델 개발 및 운영에 필요한 반도체에 대한 의존도를 줄이려는 목적이 있는 것으로 보입니다. 이를 통해 비용 절감 및 공급 안정성을 확보하려는 전략으로 해석될 수 있습니다. 주요 관련 기업 1. OpenAI: AI 기술 연구 및 개발을 주도하는 기업으로, 챗GPT를 비롯한 여러 혁신적인 AI 모델을 개발하였습니다. 2. 엔비디아(NVIDIA): 현재 AI 반도체 시장을 지배하고 있는 주요 기업입니다. 고성능 AI 반도체로 유명합니다. 3. TSMC (Taiwan Semiconductor Manufacturi.. 2024. 1. 22.
[투자정보] 에코프로비엠 - "이차전지 주가 일제히 급락, 영업손실 우려에 코스닥시장 약세" 이차전지 관련 주식들이 22일 크게 하락한 소식이 돌았습니다. 코스닥시장의 중요한 기업들인 에코프로비엠, 에코프로, 엘앤에프를 비롯하여 주요한 유가증권시장의 기업들인 LG에너지솔루션, 포스코홀딩스, LG화학, 삼성SDI의 주가가 모두 하락했습니다. 이 하락은 지난해 4분기에 실적이 부진할 것으로 예상되고, 몇몇 기업에서 '어닝 쇼크'라는 부정적인 실적을 발표했기 때문으로 보입니다. 시장 분석 현재 이차전지 시장과 에코프로비엠을 포함한 관련 회사들의 상황은 다음과 같습니다. 1. 시장 동향 및 도전 과제 1) 전기차 시장의 성장 전기차의 글로벌 시장 침투율은 2022년에 13%에 달했습니다. 이는 전기차용 배터리 수요를 2015년의 28 GWh에서 2022년의 492 GWh로 증가시켰습니다. 그러나 최근 .. 2024. 1. 22.
[백준] 1541번 - 잃어버린 괄호 - 그리드 알고리즘 문제 세준이는 양수와 +, -, 그리고 괄호를 가지고 식을 만들었다. 그리고 나서 세준이는 괄호를 모두 지웠다. 그리고 나서 세준이는 괄호를 적절히 쳐서 이 식의 값을 최소로 만들려고 한다. 괄호를 적절히 쳐서 이 식의 값을 최소로 만드는 프로그램을 작성하시오. 입력 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 많이 연속되는 숫자는 없다. 수는 0으로 시작할 수 있다. 입력으로 주어지는 식의 길이는 50보다 작거나 같다. 출력 첫째 줄에 정답을 출력한다. 풀이 1. 나는 '-' 기준으로 쪼개기 2. 쪼개진 것끼리 덧셈 3. 첫번째 숫자 제외하고 뒤에 숫자.. 2024. 1. 22.
[백준] 11399번 - ATM - 그리드 알고리즘 문제 인하은행에는 ATM이 1대밖에 없다. 지금 이 ATM앞에 N명의 사람들이 줄을 서있다. 사람은 1번부터 N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 Pi분이다. 사람들이 줄을 서는 순서에 따라서, 돈을 인출하는데 필요한 시간의 합이 달라지게 된다. 예를 들어, 총 5명이 있고, P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 인 경우를 생각해보자. [1, 2, 3, 4, 5] 순서로 줄을 선다면, 1번 사람은 3분만에 돈을 뽑을 수 있다. 2번 사람은 1번 사람이 돈을 뽑을 때 까지 기다려야 하기 때문에, 3+1 = 4분이 걸리게 된다. 3번 사람은 1번, 2번 사람이 돈을 뽑을 때까지 기다려야 하기 때문에, 총 3+1+4 = 8분이 필요하게 된다.. 2024. 1. 22.
[백준] 1931번 - 회의실 배정 - 그리디 알고리즘 문제 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자. 단, 회의는 한번 시작하면 중간에 중단될 수 없으며 한 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있다. 회의의 시작시간과 끝나는 시간이 같을 수도 있다. 이 경우에는 시작하자마자 끝나는 것으로 생각하면 된다. 입력 첫째 줄에 회의의 수 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N+1 줄까지 각 회의의 정보가 주어지는데 이것은 공백을 사이에 두고 회의의 시작시간과 끝나는 시간이 주어진다. 시작 시간과 끝나는 시간은 231-1보다 작거.. 2024. 1. 22.
[python] Lambda 함수: 간결한 함수 정의와 활용 lambda란? lambda 함수는 간결한 함수 정의와 활용에 유용한 기능 중 하나입니다. 이 글에서는 lambda 함수가 무엇이고 어떻게 활용할 수 있는지 자세히 알아보겠습니다. 목차 1. lambda 함수란 무엇인가요? - lambda 함수의 정의 - lambda 함수와 일반 함수의 차이점 2. lambda 함수의 기본 문법 - lambda 함수의 형태 - 인자와 반환값 3. lambda 함수의 활용 예시 - 간단한 수학 연산 - map()과 filter()와 함께 사용하기 - 정렬 기준 지정에 활용하기 4. lambda 함수의 장점과 한계 - 간결성과 가독성 - 복잡한 로직에는 어울리지 않을 때 5. 실제 예시와 함께 알아보기 - 리스트 조작 예시 - 정렬 및 필터링 예시 - 데이터 처리 예시 1... 2024. 1. 21.
[이코테] 커리큘럼 - 이해까지 도와주는 풀이 문제 철수는 온라인으로 컴퓨터공학강의를 듣고 있다. 이때 각 온라인강의는 선수강의가 있을 수 있는데, 선수 강의가 있는 강의는 선수 강의를 먼저 들어야만 해당강의를 들을 수 있다. 예를들어 '알고리즘’ 강의의 선수 강의로 '자료구조'가 존재한다면, ‘자료구조를 들은 이후에 ‘알고리즘' 강의를 들을 수 있다. 철수는 총 N개의 강의를 듣고자 한다. 모든 강의는 1번부터 N번까지의 번호를 가진다. 또한 동시에 여러 개의 강의를 들을 수 있다고 가정한다. 예를 들어 N=3일 때, 3번강의의 선수 강의로 1번과 2번강의가 있고, 1번과 2번강의는 선수강의가 없다고 가정하자. 그리고 각 강의에 대하여 강의 시간이 다음과 같다고 가정하자. 1번 강의: 30시간 2번 강의: 20시간 3번 강의: 40시간 이 경우 1.. 2024. 1. 21.