본문 바로가기

반응형

Algorithm

(53)
SWEA 5207 이진탐색 (python) 5207. [파이썬 S/W 문제해결 구현] 4일차 - 이진 탐색 D3 유사문제 2021.04.21 - [분류 전체보기] - SWEA 4839 이진탐색 (python) 문제 서로 다른 정수 N개가 주어지면 정렬한 상태로 리스트 A에 저장한다. 그런 다음 리스트 B에 저장된 M개의 정수에 대해 A에 들어있는 수인지 이진 탐색을 통해 확인하려고 한다. 전체 탐색 구간의 시작과 끝 인덱스를 l과 r이라고 하면, 중심 원소의 인덱스 m=(l+r)//2 이고, 이진 탐색의 왼쪽 구간은 l부터 m-1, 오른쪽 구간은 m+1부터 r이 된다. 이때 B에 속한 어떤 수가 A에 들어있으면서, 동시에 탐색 과정에서 양쪽구간을 번갈아 선택하게 되는 숫자의 개수를 알아보려고 한다. 다음은 10개의 정수가 저장된 리스트 A에서 이..
SWEA 4839 이진탐색 (python) 4839. [파이썬 S/W 문제해결 기본] 2일차 - 이진탐색 D2 [파이썬 S/W 문제해결 기본] 2일차 2021.04.21 - [Algorithm] - SWEA 4836 색칠하기 (python) 2021.04.19 - [Algorithm] - SWEA 4837 부분집합의 합 (python) 2021.04.21 - [Algorithm] - SWEA 4839 이진탐색 (python) 2021.04.21 - [Algorithm] - SWEA 4843 특별한 정렬 (python) 유사문제 2021.04.21 - [분류 전체보기] - SWEA 5207 이진탐색 (python) 문제 코딩반 학생들에게 이진 탐색을 설명하던 선생님은 이진탐색을 연습할 수 있는 게임을 시켜 보기로 했다. 짝을 이룬 A, B 두 사람..
BOJ 2217 로프 (python) BOJ 2217 로프 silver4 문제 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하지만 여러 개의 로프를 병렬로 연결하면 각각의 로프에 걸리는 중량을 나눌 수 있다. k개의 로프를 사용하여 중량이 w인 물체를 들어올릴 때, 각각의 로프에는 모두 고르게 w/k 만큼의 중량이 걸리게 된다. 각 로프들에 대한 정보가 주어졌을 때, 이 로프들을 이용하여 들어올릴 수 있는 물체의 최대 중량을 구해내는 프로그램을 작성하시오. 모든 로프를 사용해야 할 필요는 없으며, 임의로 몇 개의 로프를 골라서 사용해도 된다. 입력 첫째 줄에 정수 N이 주어진다. 다..
BOJ 9020 골드바흐의 추측 (python) BOJ 9020 골드바흐의 추측 문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아니다. 골드바흐의 추측은 유명한 정수론의 미해결 문제로, 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다는 것이다. 이러한 수를 골드바흐 수라고 한다. 또, 짝수를 두 소수의 합으로 나타내는 표현을 그 수의 골드바흐 파티션이라고 한다. 예를 들면, 4 = 2 + 2, 6 = 3 + 3, 8 = 3 + 5, 10 = 5 + 5, 12 = 5 + 7, 14 = 3 + 11, 14 = 7 + 7이다. 10000보다 작거나 같은 모든 짝수 n에 대한 골드바흐 파..
SWEA 11454 Baby-gin Game (python) 11454. Baby-gin Game D2 비슷한 문제 2021.04.20 - [분류 전체보기] - SWEA 5203 베이비진 게임 (python) 문제 0~9 사이의 숫자 카드에서 임의의 카드 6장을 뽑았을 때 3장의 카드가 연속적인 번호를 갖는 경우를 run이라 하고 3장의 카드가 동일한 번호를 갖는 경우를 triplet이라고 한다. 그리고, 6장의 카드가 run과 triplet으로만 구성된 경우를 baby-gin으로 부른다. 6자리의 숫자를 입력 받아 baby-gin 여부를 판단하는 프로그램을 작성하라. (baby-gin 일 경우 1, 아닌 경우 0 을 출력한다.) [입력] T 카드목록1 ... 카드목록T [출력] # 1 {답} ... # T {답} 풀이 T = int(input()) def che..
SWEA 5203 베이비진 게임 (python) 5203. [파이썬 S/W 문제해결 구현] 3일차 - 베이비진 게임 D3 [파이썬 S/W 문제해결 구현] 3일차 2021.04.20 - [분류 전체보기] - SWEA 5201 컨테이너 운반 (python) 2021.04.20 - [분류 전체보기] - SWEA 5202 화물도크 (python) 문제 0부터 9까지인 숫자 카드 4세트를 섞은 후 6개의 카드를 골랐을 때, 연속인 숫자가 3개 이상이면 run, 같은 숫자가 3개 이상이면 triplet이라고 한다. 게임을 시작하면 플레이어1과 플레이어 2가 교대로 한 장 씩 카드를 가져가며, 6장을 채우기 전이라도 먼저 run이나 triplet이 되는 사람이 승자가 된다. 두 사람이 가져가게 되는 순서대로 12장의 카드에 대한 정보가 주어졌을 때 승자를 알아내는..
SWEA 5202 화물도크 (python) 5202. [파이썬 S/W 문제해결 구현] 3일차 - 화물 도크 D3 [파이썬 S/W 문제해결 구현] 3일차 2021.04.20 - [분류 전체보기] - SWEA 5201 컨테이너 운반 (python) 2021.04.20 - [분류 전체보기] - SWEA 5203 베이비진 게임 (python) 문제 24시간 운영되는 물류센터에는 화물을 싣고 내리는 도크가 설치되어 있다. 0시부터 다음날 0시 이전까지 A도크의 사용신청을 확인해 최대한 많은 화물차가 화물을 싣고 내릴 수 있도록 하면, 최대 몇 대의 화물차가 이용할 수 있는지 알아내 출력하는 프로그램을 만드시오. 신청서에는 작업 시작 시간과 완료 시간이 매시 정각을 기준으로 표시되어 있고, 앞 작업의 종료와 동시에 다음 작업을 시작할 수 있다. 예를 들어 ..
SWEA 5201 컨테이너 운반 (python) 5201. [파이썬 S/W 문제해결 구현] 3일차 - 컨테이너 운반 D3 [파이썬 S/W 문제해결 구현] 3일차 2021.04.20 - [분류 전체보기] - SWEA 5202 화물도크 (python) 2021.04.20 - [분류 전체보기] - SWEA 5203 베이비진 게임 (python) 문제 화물이 실려 있는 N개의 컨테이너를 M대의 트럭으로 A도시에서 B도시로 운반하려고 한다. 트럭당 한 개의 컨테이너를 운반 할 수 있고, 트럭의 적재용량을 초과하는 컨테이너는 운반할 수 없다. 컨테이너마다 실린 화물의 무게와 트럭마다의 적재용량이 주어지고, A도시에서 B도시로 최대 M대의 트럭이 편도로 한번 만 운행한다고 한다. 이때 이동한 화물의 총 중량이 최대가 되도록 컨테이너를 옮겼다면, 옮겨진 화물의 전체..

반응형