본문 바로가기

분류 전체보기

(60)
InfluxDB https://docs.influxdata.com/influxdb3/core/시계열 데이터저장 할 때 어떤 DB를 사용하면 좋냐고 claude에게 물어보니 죽어도 InfluxDB 사용하라고 해서 공부한다. 아래는 claude 가 주장하는 비트코인 데이터를 1초마다 저장한다고 가정할 경우에 해당하는 내용이다.데이터 조회 시간 (1억 건 기준)기간InfluxDBMongoDBPostgreSQL1시간20ms500ms2초1일50ms2초8초1주100ms10초30초1개월200ms45초2분저장 공간 (1년 데이터)해상도InfluxDBMongoDBPostgreSQL1초100GB300GB250GB1분 집계2GB8GB6GB1시간 집계50MB200MB150MB InfluxDB 특징influxDB는 실시간 시계열 데이터에 특화..
백준 14225 부분수열의 합 https://boj.kr/14225 14225번: 부분수열의 합 수열 S가 주어졌을 때, 수열 S의 부분 수열의 합으로 나올 수 없는 가장 작은 자연수를 구하는 프로그램을 작성하시오. 예를 들어, S = [5, 1, 2]인 경우에 1, 2, 3(=1+2), 5, 6(=1+5), 7(=2+5), 8(=1+2+5)을 만들 www.acmicpc.net 비트마스크로 풀었다. 수열의 길이만큼 비트 개수를 정하고 모든 경우의 수를 비트가 꺼져있는지 켜져있는지 확인해서 그 합을 구해서 풀었다. set 자료구조를 사용해서 1부터 (수열에 있는 모든 합 + 1 ) 까지 수를 넣어주고 비트가 켜져있는 수의 합을 빼주면서 값을 구했다. 왜 수열에 있는 모든 합 +1 이냐면 가장 작은 자연수를 구할 때 수열의 모든 합보다 ..
[일기] 취준용 프로젝트 시작 전역을 하고 취준을 시작 26에 군대를 가서 28에 전역을 했다. 내 친구들은 물론이고 후배들도 다 취직을 했다. 취직 준비를 하려니 별로 안해본 JAVA SPRING에다가 Typescript를 원한다는 것을 알게 되어 부랴부랴 준비한다. 왜 미리 안했을까 ㅋㅋ Django나 Go같이 좋아하는 것만 하면 이런 일이 일어난다는 것을 알았다. 지금 22년 2월 25일인데 3월 2번째 주까지 뭔가 하나 만들어야겠다. 개발 Stack 생각하기 기업이 많이 원하는 것으로 하기로 했다. 백엔드 개발자로 지원을 하려고 하니까 Java Spring을 뭔가 당연히 해야하는 듯한 느낌으로 요구한다. 얼른 공부해서 해봐야겠다. 군대 가기 전에는 전부 React였던 것 같은데 지금은 Vue를 원하는 곳이 많은 것 같다. Vu..
주식 정보 가져오기 1. investpy 주식 관련 서비스를 만들어 보고 싶다 주식 데이터를 모아보기로 했다. https://pypi.org/project/investpy/ 이런 것을 찾았다. 유명 주식 사이트인 investing.com을 파싱해서 정보를 수집해주는 패키지이다. 예제를 보면 국가가 스페인으로 되어있는데 import investpy df = investpy.get_stock_historical_data(stock='BBVA', country='spain', from_date='01/01/2010', to_date='01/01/2019') print(df.head()) 삼성 전자를 찾아보려 한다. import investpy df = investpy.get_stock_historical_data(stock='0..
[백준] 1260. DFS와 BFS https://www.acmicpc.net/problem/1260 문제설명 dfs와 bfs 를 구현하여 방문 노드 순서대로 노드 값을 출력하는 것이다. 입력 4 5 1 1 2 1 3 1 4 2 4 3 4 출력 1 2 4 3 1 2 3 4 나의 사고과정 사고과정은 없다. 외울정도로 많이 해봤던 것이다. 소스코드 C++ #include #include #include using namespace std; int n, m, start; int tree[1001][1001] = {0,}; int visit[1001] = {0,}; void dfs(int v) { visit[v] = 1; printf("%d ", v); for (int i = 1; i
[백준] 2630. 색종이 만들기 안녕하세요. 이번에는 백준의 단계별로 풀어보기 중 분할정복의 '색종이 만들기'를 풀어보겠습니다. 문제설명 https://www.acmicpc.net/problem/2630 전형적인 분할정복문제이다. 입력 8 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 1 1 1 0 1 0 0 1 1 1 1 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 출력 9 7 나의 사고과정 예전에 이런것을 풀어봤었다! 제일 큰 종이에서 모든 부분이 같은지 확인하고 만약 아니라면 4부분으로 나눠서 똑같이 확인한다. 모두 같은 부분이 나오면 해당 색깔의 종이 수를 세준다. 소스코드 C++ #include #include const int ..
알고리즘 풀이 vcode 개발 환경설정 안녕하세요. 이번엔 알고리즘 풀이를 할 때 저의 개발 환경설정을 공유해보겠습니다. 저는 운영체제로 윈도우, mac, ubuntu18.04.4를 사용하는데요 각각의 설정에 대해 알아보도록 하겠습니다. 공통설정 vscode 설치 https://visualstudio.microsoft.com/ko/ 위의 사이트에서 vscode를 다운받아 줍시다! vscode는 atom, sublime 등과 같은 텍스트 에디터 입니다. 엄청난 양의 플러그인들이 개발되어있기 때문에 다양한 환경을 구성할 수 있죠. 확장 프로그램 설치 자신이 문제풀이를 할 때 사용하는 언어에 맞는 확장 프로그램을 설치해 줍시다! 폴더구조 algorithms - input.txt - acmicpc (백준) - starterpack.sh (밑에서 설명..
[백준] 1021 회전하는 큐 #include const int q_length = 100; class deque { public: int arr[q_length]; int front = 0; int back = 0; int addmod(int v) { return (v+1) % q_length; } int submod(int v) { return (v-1+q_length) % q_length; } void push_back(int v) { arr[back] = v; back = addmod(back); } void push_front(int v) { front = submod(front); arr[front] = v; } void front_pop() { front = addmod(front); } // op 1 void back_..