Python 390

[baekjoon] 백준 2847번(파이썬): 게임을 만든 동준이

문제 2847번: 게임을 만든 동준이 학교에서 그래픽스 수업을 들은 동준이는 수업시간에 들은 내용을 바탕으로 스마트폰 게임을 만들었다. 게임에는 총 N개의 레벨이 있고, 각 레벨을 클리어할 때 마다 점수가 주어진다. 플레이어 www.acmicpc.net - 학교에서 그래픽스 수업을 들은 동준이는 수업시간에 들은 내용을 바탕으로 스마트폰 게임을 만들었다. - 게임에는 총 N개의 레벨이 있고, 각 레벨을 클리어할 때마다 점수가 주어진다. - 플레이어의 점수는 레벨을 클리어하면서 얻은 점수의 합으로, 이 점수를 바탕으로 온라인 순위를 매긴다. - 동준이는 레벨을 난이도 순으로 배치했다. - 하지만, 실수로 쉬운 레벨이 어려운 레벨보다 점수를 많이 받는 경우를 만들었다. - 이 문제를 해결하기 위해 동준이는 특..

CodingTest/Baekjoon 2021.07.01

[baekjoon] 백준 1417번(파이썬): 국회의원 선거

문제 1417번: 국회의원 선거 첫째 줄에 후보의 수 N이 주어진다. 둘째 줄부터 차례대로 기호 1번을 찍으려고 하는 사람의 수, 기호 2번을 찍으려고 하는 수, 이렇게 총 N개의 줄에 걸쳐 입력이 들어온다. N은 1,000보다 작거나 www.acmicpc.net - 다솜이는 사람의 마음을 읽을 수 있는 기계를 가지고 있다. - 다솜이는 이 기계를 이용해서 2008년 4월 9일 국회의원 선거를 조작하려고 한다. - 다솜이의 기계는 각 사람들이 누구를 찍을지 미리 읽을 수 있다. - 어떤 사람이 누구를 찍을지 정했으면, 반드시 선거 때 그 사람을 찍는다. - 현재 형택구에 나온 국회의원 후보는 N명이다. - 다솜이는 이 기계를 이용해서 그 마을의 주민 M명의 마음을 모두 읽었다. - 다솜이는 기호 1번이다..

CodingTest/Baekjoon 2021.06.30

[baekjoon] 백준 12018번(파이썬): Yonsei TOTO

문제 12018번: Yonsei TOTO 첫째 줄에는 과목 수 n (1 ≤ n ≤ 100)과 주어진 마일리지 m (1 ≤ m ≤ 100)이 주어진다. 각 과목마다 2줄의 입력이 주어지는데 첫째 줄에는 각 과목에 신청한 사람 수 Pi과 과목의 수강인원 Li이 주어 www.acmicpc.net - 연세대학교 수강신청이 얼마 전부터 바뀌어, 마일리지 제도로 바뀌었다. - 이 제도는 각각의 학생들에게 마일리지를 주어 듣고 싶은 과목에 마일리지를 과목당 1~36을 분배한다. - 그리고 모두 분배가 끝이 나면 과목에 대해서 마일리지를 많이 투자한 순으로 그 과목의 수강인원만큼 신청되는 방식이다. - 성준이는 연세대학교 재학 중인 학생이다. - 성준이는 저번 수강신청에서 실패하여 휴학을 했기 때문에 이번 수강신청만은..

CodingTest/Baekjoon 2021.06.29

[baekjoon] 백준 16120번(파이썬): PPAP

문제 16120번: PPAP 첫 번째 줄에 문자열이 주어진다. 문자열은 대문자 알파벳 P와 A로만 이루어져 있으며, 문자열의 길이는 1 이상 1,000,000 이하이다. www.acmicpc.net - bryan은 PPAP를 좋아한다. bryan은 어떻게 하면 사람들에게 PPAP를 전파할 수 있을까 고민하던 중 PPAP 문자열이라는 것을 고안하게 되었다. - PPAP 문자열은 문자열 P에서 시작하여, 문자열 내의 P를 PPAP로 바꾸는 과정을 반복하여 만들 수 있는 문자열로 정의된다. 정확하게는 다음과 같이 정의된다. P는 PPAP 문자열이다. PPAP 문자열에서 P 하나를 PPAP로 바꾼 문자열은 PPAP 문자열이다. - 예를 들어 PPAP는 PPAP 문자열이다. 또한, PPAP의 두 번째 P를 PPA..

CodingTest/Baekjoon 2021.06.25

[baekjoon] 백준 11509번(파이썬): 풍선 맞추기

문제 11509번: 풍선 맞추기 첫 번째 예제 에서 [5,4,3] 을 터트리고 [2,1]을 터트리면 모든 풍선을 터트릴 수 있으므로 최소한 2개의 화살을 필요로 한다. www.acmicpc.net - 큰 방에 N개의 풍선이 떠있다. - 풍선들은 왼쪽부터 오른쪽까지 일렬로 있다. - 진솔이는 화살 가지고 노는 것과 사냥 연습하는 것을 좋아한다. - 진솔이는 화살을 왼쪽에서 오른쪽으로 쏜다. - 높이는 임의로 선택한다. - 화살은 선택된 높이 H에서 풍선을 마주칠 때까지 왼쪽에서 오른쪽으로 이동한다. - 화살이 풍선을 마주치는 순간, 풍선은 터지고 사라진다. - 화살은 계속해서 가던길을 가는데 높이는 1 줄어든다. - 그러므로 만약 화살이 높이 H에서 이동 중이었다면 풍선을 터트린 후에는 높이가 H-1이 된..

CodingTest/Baekjoon 2021.06.24

[baekjoon] 백준 1826번(파이썬): 연료 채우기

문제 1826번: 연료 채우기 첫째 줄에 주유소의 개수 N(1 ≤ N ≤ 10,000)가 주어지고 두 번째 줄부터 N+1번째 줄 까지 주유소의 정보가 주어진다. 주유소의 정보는 두개의 정수 a,b로 이루어 져 있는데 a(1 ≤ a ≤ 1,000,000)는 성경 www.acmicpc.net - 성경이는 트럭을 정글 속에서 운전하다가 트럭의 연료탱크에 갑자기 구멍이 나서 1km를 가는데 1L의 연료가 새 나가게 되었다. - 이것을 고치기 위해서는 가장 가까운 마을에 가야 한다. - 그런데 그냥 가다가는 중간에 연료가 다 빠질 수가 있다. - 다행스럽게도 정글 곳곳에 연료를 채울 수 있는 주유소가 N개 있다. - 그런데 정글 속에서 중간에 차를 멈추는 행위는 매우 위험한 행위이므로 주유소에서 멈추는 횟수를 최..

CodingTest/Baekjoon 2021.06.23

[baekjoon] 백준 1105번(파이썬): 팔

문제 1105번: 팔 첫째 줄에 L과 R이 주어진다. L은 2,000,000,000보다 작거나 같은 자연수이고, R은 L보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net - L과 R이 주어진다. 이때, L보다 크거나 같고, R보다 작거나 같은 자연수 중에 8이 가장 적게 들어있는 수에 들어있는 8의 개수를 구하는 문제이다. - L과 R이 주어진다. L은 2,000,000,000보다 작거나 같은 자연수이고, R은 L보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. 알고리즘 - 두 구간의 자연수를 입력받는다. - 두 자연수의 길이가 다르면 8을 포함하지 않는 자연수가 존재하는 것으로 0을 출력한다. - 반복문을 통해 두 자연수의 자릿..

CodingTest/Baekjoon 2021.06.22

[baekjoon] 백준 1543번(파이썬): 문서 검색

문제 1543번: 문서 검색 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한 www.acmicpc.net - 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. - 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. - 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한다. - 예를 들어, 문서가 abababa이고, 그리고 찾으려는 단어가 ababa라면, 세준이의 이 함수는 이 단어를 0번부터 찾을 수 있고, 2번부터도 찾을 수 있다. 그러나 동시에 셀 수는 없다. - 세준이는 문서와 검색하려는 단어가 주어졌을 때, 그 단어가 최대..

CodingTest/Baekjoon 2021.06.21

[baekjoon] 백준 19939번(파이썬): 박 터뜨리기

문제 19939번: 박 터뜨리기 $N$개의 공을 $K$개의 바구니에 문제의 규칙을 만족하면서 나눠 담을 수 있다면, 가장 많이 담긴 바구니와 가장 적게 담긴 바구니의 공의 개수 차이를 출력한다. 나눠 담을 수 없는 경우에는 -1을 www.acmicpc.net - K개의 팀이 박 터트리기 게임을 한다. - 각 팀은 하나의 바구니를 가지고 있고, 바구니에 들어있는 공을 던져서 자기 팀의 박을 터트려야 한다. - 우리는 게임을 준비하기 위해서, N개의 공을 K개의 바구니에 나눠 담아야 한다. - 이때, 게임의 재미를 위해서 바구니에 담기는 공의 개수를 모두 다르게 하고 싶다. - 즉, N개의 공을 K개의 바구니에 빠짐없이 나누어 담는데, 각 바구니에는 1개 이상의 공이 있어야 하고, 바구니에 담긴 공의 개수가..

CodingTest/Baekjoon 2021.06.20