softeer5 [Algorithm] Softeer 강의실 배정 - Lv.3 (python) [ Softeer 연습문제 - 강의실 배정 ]문제명 : 강의실 배정 - (Level.3)사용언어 : python알고리즘 : 그리디 알고리즘 문제김교수는 강의실 1개에 최대한 많은 강의를 배정하려고 한다. 배정된 강의는 서로 겹치지 않아야 하며 수업시간의 길이와 상관없이 최대한 강의를 많이 배정하라. 단, 두 강의의 시작시간과 종료시간은 겹쳐도 된다. 알고리즘 및 풀이: 최대 가치를 계산하는 그리디 알고리즘을 활용하여 풀었다.이 문제에서는 강의 list를 종료 시간을 기준으로 정렬 하는 것이 포인트인 것 같다.각 강의가 종료되는 시간을 기준으로 정렬한 뒤,현재 시간과 겹치지 않는 강의 중에서 가장 빨리 끝나는 강의를 선택하는 방식으로 접근했다. import sysdef maximize_lectures(.. Algorithm 2024. 2. 2. [Algorithm] Softeer [21년 재직자 대회 예선] 좌석관리 (python) [ Softeer 연습문제 - 좌석관리 ] Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제명 : 좌석관리 [21년 재직자 대회 예선] 사용언어 : python 문제 현대자동차그룹에서 사내 식당 매니저로 일하는 기항이는 점심시간에 맞춰 일을 하고 있다. 오늘 일은 사람들이 사회적 거리 두기를 잘 지키면서 식당 좌석에 앉도록 상황을 관리하는 일이다. 현재 식당에는 좌석 N×M개가 N행 M열로 나열되어 있는데, 각 좌석에는 (1,1)에서 (N,M)로 좌표가 배정되어 있다. x행 y열에 있는 좌석의 좌표는 (x, y)이다. 점심시간에는 많은 사람들이 식당을 드나든다. 사번이 id인 어떤 사원이 식당에 왔다면, 다음 조건에 맞춰 이 사원을 위한 좌석을 배정해 준다. 현재 K개의 좌석이 .. Algorithm 2024. 2. 1. [Algorithm] Softeer 장애물 인식 프로그램 (Python) [ Softeer 연습문제 - 장애물 인식 프로그램 ] Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제명 : 장애물 인식 프로그램 사용언어 : Python 알고리즘 : DFS/BFS -> 필자는 BFS 사용으로 풀이. 문제 알고리즘 및 풀이 이 문제는 이진 행렬에서 그룹의 개수와 각 그룹의 크기를 찾는 문제이다. 필자는 BFS(너비 우선 탐색) 알고리즘을 활용했다. 큐를 활용하여 한 정점에서 시작하여 인접한 정점을 탐색하는 방법으로 접근하였다. (x, y) 좌표를 순회하면서 "1"인 곳을 발견하면 해당 좌표에서 BFS를 시작하고 발견된 좌표는 방문 처리를 위해 "0"으로 바꿔준다. 이는 그룹의 크기를 측정하는 중복 방문을 방지한다. - 전역 변수 활용 : 'cnt' 변수는 그룹.. Algorithm 2024. 1. 24. [Algorithm] Softeer 조립라인 - Lv.3 (Python) [ Softeer 연습문제 - 조립라인 ] Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제명 : 조립라인 (Level.3) 사용언어 : Python 사용 알고리즘 : DP (Dynamic Programming) 문제 동일한 자동차를 생산하는 2개의 조립 라인 A와 B가 있다. 두 조립라인에는 각각 N개의 작업장이 있다. 각각의 작업장을 Ai (1 ≤ i ≤ N)와 Bi (1 ≤ i ≤ N)로 표시하자. Ai 작업장과 Bi 작업장은 동일한 작업을 수행하지만 작업시간은 다를 수 있다. A 조립 라인의 경우 A1 작업장에서 최초 조립이 시작되고, Ai 작업장에서 작업이 종료되면 바로 Ai+1 작업장에서 작업을 시작할 수 있다. B 조립 라인도 동일한 방식으로 조립을 진행한다. Ai .. Algorithm 2024. 1. 23. [Algorithm] Softeer 금고털이 - Lv.2 (Python) [ Softeer 연습문제 - 금고털이 ] Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제명 : 금고털이 사용언어 : Python 사용 알고리즘 : 그리디 알고리즘 문제 설명 루팡은 배낭을 하나 메고 은행금고에 들어왔다. 금고 안에는 값비싼 금, 은, 백금 등의 귀금속 덩어리가 잔뜩 들어있다. 배낭은 W ㎏까지 담을 수 있다. 각 금속의 무게와 무게당 가격이 주어졌을 때 배낭을 채울 수 있는 가장 값비싼 가격은 얼마인가? 루팡은 전동톱을 가지고 있으며 귀금속은 톱으로 자르면 잘려진 부분의 무게만큼 가치를 가진다. ▼ 실행 코드 ▼ import sys input = sys.stdin.readline W, N = map(int, input().split()) jewelry = [l.. Algorithm 2024. 1. 19. 이전 1 다음 728x90