본문 바로가기

전체 글102

[Programmers / Level2] 뒤에 있는 큰 수 찾기 + 주식가격 https://school.programmers.co.kr/learn/courses/30/lessons/154539 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 결론부터 말하자면, 스텍인덱스를 활용해서 푸는 문제이다. 아래와 같이 제한사항이 걸려있는 상황이다. 제한사항 4 ≤ numbers의 길이 ≤ 1,000,000 제한사항에 따르면 1000000번 + @의 연산을 한다. 따라서 아래와 같이 포문 두번 돌리는 O(N**2)연산을 하면 실패한다.. - 오답코드 def solution(numbers): total_numbers = len(numbers) .. 2024. 3. 4.
[Programmers / Level2] 게임 맵 최단거리 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr from collections import deque dxs = [0, 1, -1, 0] dys = [1, 0, 0, -1] def is_valid(nx, ny, N, M, maps): return 0 2024. 3. 1.
[Programmers / Level2] 모음 사전 https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제를 보자마자 순열조합을 사용해야겠다고 생각했다. product(곱연산)을 사용해서 리스트에 정의시켜주고, 해당되는 값을 찾기위해 index 메소드를 사용하면 풀 수 있겠다고 생각했다. - .extend() 메소드를 사용 from itertools import product def solution(word): words = [] vowels = 'AEIOU' for i in range(1, 6).. 2024. 2. 29.
[Programmers / Level3] 야근지수 https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr - 오답 시간복잡도 고려를 하지않고, 단순히 역순정렬을 하고 가장 큰 숫자부터 선형적으로 숫자를 뺄셈해주는식으로 해버렸다. def solution(n, works): sorted_works = sorted(works, reverse=True) for i in range(n): sorted_works[i % len(works)] -= 1 for i in range(len(sorted_works)):.. 2024. 2. 28.
[Apache Airflow 기반의 데이터 파이프라인]운영환경에서 Airflow 관리 아키텍처 설치 방식 메타스토어 스케줄러 익스큐터 설치 프로세스 로그 확인 메트릭 시각화 및 모니터링 아키텍처 최소 구성 요건 : 웹 서버 → 데이터베이스 ← 스케줄러 → DAGs 웹 서버 Airflow 프로세스 Airflow2에서 웹 서버는 데이터베이스에서 DAG 읽어내므로 DAG 파일 액세스 필요 없음 파이프라인의 현재 상태에 대한 정보를 시각적으로 표시 사용자가 DAG 트리거 같은 특정 태스크 수행할 수 있도록 관리 스케줄러 Airflow 프로세스 DAG 정의가 있는 폴더에 엑세스할 수 있어야 함 DAG 파일 구문 분석, 비트 및 조각 추출, 메타 스토어에 저장 실행할 태스크 결정 및 대기열에 배치 대기 상태의 태스크 가져오기 및 실행 데이터베이스 웹 서버 및 스케줄러의 메타 데이터를 저장하는 별도의.. 2024. 2. 27.
[Apache Airflow 기반의 데이터 파이프라인] 모범사례 깔끔한 DAG 작성 재현 가능한 태스크 설계 효율적인 데이터 처리 자원관리 깔끔한 DAG 작성 스타일 가이드 사용 사람마다 코딩 스타일이 다르기 때문에 코드 스타일을 지정하여 개발하여 가독성을 높임 일반적으로 Python의 경우 PEP8 스타일 사용 정적 검사기 (검사만 해주고 코드를 수정하진 않음): pylint, flake8 Python 코드 포맷터 사용 (코드 자체를 수정해줌): YAPF, Black Airflow 전용 코드 스타일 규칙 dag 선언 with DAG(...) as dag: # 콘텍스트 매니저를 사용하는 경우 taskl=PythonOperator(...) task2=Python0perator(...) dag = DAG(...) # 콘텍스트 매니저를 사용하지 않는 경우 taskl = P.. 2024. 2. 26.
반응형