전체 글 37

[그리디] 회의실 배정

🔹 문제 설명한 개의 회의실에서 여러 개의 회의를 예약하려고 합니다.각 회의는 시작 시간과 종료 시간이 주어지며, 한 번에 하나의 회의만 진행할 수 있습니다.최대한 많은 회의를 진행하려면, 회의를 어떻게 선택해야 할까요? 🔹 입력 형식첫 번째 줄에 **회의의 개수 N**이 주어집니다. (1 ≤ N ≤ 100,000)이후 N개의 줄에는 **각 회의의 시작 시간과 종료 시간 (start, end)**이 주어집니다.(0 ≤ start 🔹 출력 형식최대 사용할 수 있는 회의의 개수를 출력합니다.🔹 예제 입력 51 42 33 50 65 7🔹 예제 출력3✅ 최적의 선택:(2, 3) → (3, 5) → (5, 7) (총 3개의 회의 진행 가능) 💡 개념그리디(Greedy) 알고리즘은 현재 상황에서 가장 좋..

카테고리 없음 2025.02.07

[다익스트라] 최단경로 구하기

import heapqimport sysinput = sys.stdin.readlineINF = int(1e9)def dijkstra(start, graph, n): """ 다익스트라 최단 거리 알고리즘 """ distance = [INF] * (n + 1) distance[start] = 0 q = [] heapq.heappush(q, (0, start)) while q: dist, now = heapq.heappop(q) if distance[now]   distance = [INF] * (n + 1)      #해당 노드까지 최소 거리distance[start] = 0          # 시작 노드는 0으로 초기화q = []heapq.heap..

알고리즘 2025.02.07

[DP] softeer 징검다리

https://softeer.ai/practice/6293 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 꼭 제일 왼쪽 돌 부터 시작하는 문제가 아니었다.어떤 위치에서 시작하든 높은 위치로 옮겨갈 수 있다. 증가하는 부분 수열을 찾아야 하며, 가장 긴 길이를 찾는 것이 목표 ==> LIS 문제 한다.. ==> 해결법은 DP 알고리즘import sysinput=sys.stdin.readlinen=int(input())stone=list(map(int,input().split())dp=[1]*nfor i in range(1,n): for j in range(i): if stone[j]

알고리즘 2025.02.07

[플레이데이터 데이터 엔지니어링 캠프 32기] 17주차 회고

https://soojin1.tistory.com/31 17주차 : Day 1 (10/28)지금까지 배웠던 시스템(airflow, ngnix 등)을 docker로 수행해본다고 하셨다.먼저 Ngnix  먼저 httpd 디렉토리 내에 Dockerfile은 아래와 같이 작성했다.$ vi httpd/DockerfileFROM httpd:2.4 참고로 httpd 이미지를soojin1.tistory.comhttps://soojin1.tistory.com/32 17주차 : Day 2 (10/29)오류 찾기아래 repo 의 docker 설정의 오류를 잡아 보세요.https://github.com/dMario24/k1s_err GitHub - dMario24/k1s_errContribute to dMario24/k1s_..

playdata/weekly 2024.11.03

17주차 : Day 2 (10/29)

오류 찾기아래 repo 의 docker 설정의 오류를 잡아 보세요.https://github.com/dMario24/k1s_err GitHub - dMario24/k1s_errContribute to dMario24/k1s_err development by creating an account on GitHub.github.com 충격실화이 때까지 NGNIX 인 줄 알았는데 NGINX였다....! 어제 blog-1, blog-2 두 개의 분산 서버를 사용하는 실습을 했다.새로운 시나리오 : blog1, blog2 가 존재 blog3 이 새로 생김 - LB 에 blog3 이 추가 되도록 -docker compose를 사용해서 먼저 서버 2개와 lb 서버를 띄워보자.services: blog_1: bu..

playdata/daily 2024.10.29

17주차 : Day 1 (10/28)

지금까지 배웠던 시스템(airflow, ngnix 등)을 docker로 수행해본다고 하셨다.먼저 Ngnix  먼저 httpd 디렉토리 내에 Dockerfile은 아래와 같이 작성했다.$ vi httpd/DockerfileFROM httpd:2.4 참고로 httpd 이미지를 사용하면 Apache HTTP Server를 설치하거나 별도로 설정할 필요 없이, 바로 컨테이너에서 웹 서버를 실행할 수 있다. 도커 이미지를 기반으로 쉽게 웹 애플리케이션을 배포하거나 테스트 환경을 구성할 수 있다. 빌드 및 실행 방법은 아래와 같다.# 빌드$ docker build -t my-apache2 docker/httpd/ # 실행$ docker run --rm httpd:2.4 \> cat /usr/local/apache2..

playdata/daily 2024.10.28

16주차 : Day 1 (10/21)

Jenkins Jenkins는 소프트웨어 개발 시 CI/CD(Continuous Integration/Continuous Delivery) 파이프라인을 자동화하는 오픈 소스 도구입니다. 주로 개발자가 코드를 커밋할 때마다 자동으로 빌드하고 테스트하며, 배포 작업까지 관리해주는 역할을 합니다. Jenkins는 다양한 플러그인을 통해 빌드, 테스트, 배포 환경을 쉽게 확장할 수 있으며, 코드 변경 사항을 지속적으로 통합하고 이를 빠르게 배포하는 데 중요한 역할을 합니다. $ wget https://get.jenkins.io/war-stable/2.462.3/jenkins.war$ java -jar jenkins.war --httpPort=8765 - localhost:8765 접속- 초기 로그인 정보 설정 ..

playdata/daily 2024.10.21

[플레이데이터 데이터 엔지니어링 캠프 32기] 15주차 회고

Greeting spring boot동작□ 아래와 같이 동작하는 서비스 만들기□ 아래와 같이 입력한 값을 기억하고 있다가 계속 화면에 출력하기□ 똑같이 동작하는 fastAPI 만들기□ Pepole.java 를 만들기 Pepole 은 num(int), name(String) 속성을 갖고 있음□ greeting.html num, name 같이 출력□ 입력받은 이름(영어로) -> Min,Kim,Park 처럼 첫 문자가 대문자로 표현되도록 나는 intellij 사용했다.먼저 아래와 같이 프로젝트를 생성해주었다.  우선 연결이 되는지 테스트하는 방법이다.resources -> static 경로에 index.html 파일을 생성하고 아래와 같이 내용을 구성했다. GreetingApplication을 실행하고 loc..

playdata/weekly 2024.10.20