Python 390

[baekjoon] 백준 2812번(파이썬): 크게 만들기

문제 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net - N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 문제이다. - N과 K가 주어진다. (1 ≤ K < N ≤ 500,000) - N자리 숫자가 주어진다. 이 수는 0으로 시작하지 않는다. 알고리즘 - 자릿수와 제거할 횟수를 입력받는다. - 숫자를 입력받아 리스트 변수에 넣는다. - 스택을 사용할 리스트를 만든다. - 첫 번째 반복문을 통해 숫자의 자릿수를 확인한다. - 두 번째 반복문은 입력받은 숫자보다 작은 수가 스택 리스트에 없을 때까지 반복한다. 즉, 입력받은 숫자보다 작은 스택 리스..

CodingTest/Baekjoon 2021.06.03

[baekjoon] 백준 2810번(파이썬): 컵 홀더

문제 2810번: 컵홀더 첫째 줄에 좌석의 수 N이 주어진다. (1 ≤ N ≤ 50) 둘째 줄에는 좌석의 정보가 주어진다. www.acmicpc.net - 강산이네 동네에 드디어 극장이 생겼고, 강산이는 극장에 놀러 갔다. - 매점에서 콜라를 산 뒤, 자리에 앉은 강산이는 큰 혼란에 빠졌다. - 양쪽 컵홀더를 이미 옆 사람들이 차지했기 때문에 콜라를 꽂을 컵 홀더가 없었기 때문이다. - 강산이는 극장에 다시 왔을 때는 꼭 콜라를 컵 홀더에 놓겠다는 다짐을 한 후 집에 돌아갔다. - 극장의 한 줄에는 자리가 N개가 있다. - 서로 인접한 좌석 사이에는 컵홀더가 하나씩 있고, 양 끝 좌석에는 컵홀더가 하나씩 더 있다. - 또, 이 극장에는 커플석이 있다. 커플석 사이에는 컵홀더가 없다. - 극장의 한 줄의 ..

CodingTest/Baekjoon 2021.06.02

[baekjoon] 백준 11000번(파이썬): 강의실 배정

문제 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (1 ≤ Si < Ti ≤ 109) www.acmicpc.net - 김종혜 선생님한테는 Si에 시작해서 Ti에 끝나는 N개의 수업이 주어진다. - 최소의 강의실을 사용해서 모든 수업을 가능하게 해야 한다. - 수업이 끝난 직후에 다음 수업을 시작할 수 있다. (Ti ≤ Sj 일 경우 i 수업과 j 수업은 같이 들을 수 있다.) - 수업 N이 주어진다. (1 ≤ N ≤ 200,000) - 수업 시작시간과 종료시간 S, T가 주어진다. (1 ≤ S < T ≤ 10^9) - 모든 수업시간을 가능하게 하는 강의실에 최소 개수를 구하는 문제이다. 알고리즘 - 수업의 개수를 입력..

CodingTest/Baekjoon 2021.06.01

[baekjoon] 백준 10775번(파이썬): 공항

문제 10775번: 공항 예제 1 : [2][?][?][1] 형태로 도킹시킬 수 있다. 3번째 비행기는 도킹시킬 수 없다. 예제 2 : [1][2][3][?] 형태로 도킹 시킬 수 있고, 4번째 비행기는 절대 도킹 시킬 수 없어서 이후 추가적인 도킹은 불 www.acmicpc.net - 오늘은 신승원의 생일이다. - 박승원은 생일을 맞아 신승원에게 인천국제공항을 선물로 줬다. - 공항에는 G개의 게이트가 있으며 각각은 1에서 G까지의 번호를 가지고 있다. - 공항에는 P개의 비행기가 순서대로 도착할 예정이다. - 당신은 i번째 비행기를 1번부터 gi (1 ≤ gi ≤ G) 번째 게이트 중 하나에 영구적으로 도킹하려 한다. - 비행기가 어느 게이트에도 도킹할 수 없다면 공항이 폐쇄되고, 이후 어떤 비행기도..

CodingTest/Baekjoon 2021.05.30

[baekjoon] 백준 1700번(파이썬): 멀티탭 스케줄링

문제 1700번: 멀티탭 스케줄링 기숙사에서 살고 있는 준규는 한 개의 멀티탭을 이용하고 있다. 준규는 키보드, 헤어드라이기, 핸드폰 충전기, 디지털 카메라 충전기 등 여러 개의 전기용품을 사용하면서 어쩔 수 없이 각종 전 www.acmicpc.net - 기숙사에서 살고 있는 준규는 한 개의 멀티탭을 이용하고 있다. - 준규는 키보드, 헤어드라이기, 핸드폰 충전기, 디지털 카메라 충전기 등 여러 개의 전기용품을 사용하면서 어쩔 수 없이 각종 전기용품의 플러그를 뺐다 꽂았다 하는 불편함을 겪고 있다. - 그래서 준규는 자신의 생활 패턴을 분석하여, 자기가 사용하고 있는 전기용품의 사용순서를 알아내었고, 이를 기반으로 플러그를 빼는 횟수를 최소화하는 방법을 고안하여 보다 쾌적한 생활환경을 만들려고 한다. -..

CodingTest/Baekjoon 2021.05.28

[baekjoon] 백준 1449번(파이썬): 수리공 항승

문제 1449번: 수리공 항승 첫째 줄에 물이 새는 곳의 개수 N과 테이프의 길이 L이 주어진다. 둘째 줄에는 물이 새는 곳의 위치가 주어진다. N과 L은 1,000보다 작거나 같은 자연수이고, 물이 새는 곳의 위치는 1,000보다 작거나 www.acmicpc.net - 항승이는 품질이 심각하게 나쁜 수도 파이프 회사의 수리공이다. - 항승이는 세준 지하철 공사에서 물이 샌다는 소식을 듣고 수리를 하러 갔다. - 파이프에서 물이 새는 곳은 신기하게도 가장 왼쪽에서 정수만큼 떨어진 거리만 물이 샌다. - 항승이는 길이가 L인 테이프를 무한개 가지고 있다. - 항승이는 테이프를 이용해서 물을 막으려고 한다. - 항승이는 물을 막을 때, 적어도 그 위치의 좌우 0.5만큼 간격을 줘야 물이 다시는 안 샌다고 생..

CodingTest/Baekjoon 2021.05.27

[baekjoon] 백준 1202번(파이썬): 보석 도둑

문제 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net - 보석점에는 보석이 총 N개 있다. - 각 보석은 무게 Mi와 가격 Vi를 가지고 있다. - 상덕이는 가방을 K개 가지고 있고, 각 가방에 담을 수 있는 최대 무게는 Ci이다. - 가방에는 최대 한 개의 보석만 넣을 수 있다. - 상덕이가 훔칠 수 있는 보석의 최대 가격을 구하는 문제이다. - N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) - 각 보석의 정보 Mi와 Vi가 주어진다...

CodingTest/Baekjoon 2021.05.26

[baekjoon] 백준 10162번(파이썬): 전자레인지

문제 10162번: 전자레인지 3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 www.acmicpc.net - 3개의 시간 조절용 버튼 A B C가 달린 전자레인지가 있다. - 버튼 A, B, C에 지정된 시간은 각각 5분, 1분, 10초이다. - 냉동음식마다 전자레인지로 요리해야 할 시간 T가 초단위로 표시되어 있다. - 우리는 A, B, C 3개의 버튼을 적절히 눌러서 그 시간의 합이 정확히 T초가 되도록 해야 한다. - 단 버튼 A, B, C를 누른 횟수의 합은 항상 최소가 되어야 한다. 이것을 최소 버튼 조작이라고 한다. - 만일 요리시간이 100..

CodingTest/Baekjoon 2021.05.23

[baekjoon] 백준 11047번(파이썬): 동전 0

문제 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net - 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. - 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. - 이때 필요한 동전 개수의 최솟값을 구하는 문제이다. - N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) - 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 ..

CodingTest/Baekjoon 2021.05.23

[baekjoon] 백준 11399번(파이썬): ATM

문제 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net - 지금 ATM 앞에 N명의 사람들이 줄을 서있다. - 사람은 1번부터 N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 P(i)분이다. - 사람들이 줄을 서는 순서에 따라서, 돈을 인출하는데 필요한 시간의 합이 달라지게 된다. - 예를 들어, 총 5명이 있고, P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 인 경우를 생각해보자. [1, 2, 3, 4, 5] 순서로 줄을 선다면, 1번 사람은 3분 만에 돈을 뽑을 수 있다. 2번 사람은 1번..

CodingTest/Baekjoon 2021.05.23