[백준] 8979번 올림픽 -파이썬
·
백준/그리디
https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 풀이2 찾아야하는 나라의 성적과 똑같은 성적을 가진 나라를 내림차순으로 찾아서 제일 먼저 찾은 국가의 인덱스 값을 사용하면 된다. import sys input = sys.stdin.readline n, k = map(int, input().split()) score = [list(map(int, input().split())) for _ in range(n)] score.s..
[백준] 2798번 블랙잭 - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 풀이 combination을 가져와 사용해서 조합을 해주었다. 삼중 for문으로 구현해도 상관없다. # 2798번 블랙잭 from itertools import combinations as cb N, M = map(int, input().split()) numbers = list(map(int, input().split())) minimum = int(1e5) an..
[백준] 1676번 팩토리얼 0의 개수 - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 풀이 팩토리얼 함수 작성 이후에 나온 숫자를 문자열로 만들어서 뒤부터 계산해준다. # 1676번 팩토리얼 0의 개수 def factorial(n): if (n
[백준] 13458번 시험감독 - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/13458 13458번: 시험 감독 첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000) www.acmicpc.net 풀이 단순한 그리디 문제이기에 문재의 설명에 맞게 써주면된다. # 13456번 시험감독 # 총감독관, 부감독관 사람 수 파악하 import sys input = sys.stdin.readline test = int(input()) # 시험장 개수, int화 시켜서 줄 개행(이스케이프 코드) 제거 students = list(map(int, ..
[백준] 2609번 최대공약수와 최소공배수 - 파이썬
·
백준/구현
https://www.acmicpc.net/problem/2609 2609번: 최대공약수와 최소공배수 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. www.acmicpc.net 풀이 파이썬에는 math 라이브러리에 최대공약수와 최소공배수를 계산해주는 함수가 있다.최대공약수 = gcd(greatest common divisor)최소공배수 = lcm(least common multiple) # 2609번 최대공약수와 최소공배수 import math a, b = map(int, input().split()) print(math.gcd(a, b)) print(math.lcm(a, b)) 출력결과
[백준] 1700번 멀티탭 스케줄링 - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/1700 1700번: 멀티탭 스케줄링 기숙사에서 살고 있는 준규는 한 개의 멀티탭을 이용하고 있다. 준규는 키보드, 헤어드라이기, 핸드폰 충전기, 디지털 카메라 충전기 등 여러 개의 전기용품을 사용하면서 어쩔 수 없이 각종 전 www.acmicpc.net 문제 N구 멀티탭으로 K번의 전자제품 사용을 주어진 순서에 맞게 행동해야한다. 멀티탭에 꽂힌 전자제품을 뽑는 최소 횟수를 구하라 입력 첫번째 줄 => N: N구의 멀티탭 K: K번의 행위 두번째 줄 => K번의 행위들이 일렬로 출력 풀이 일단 전자제품을 모두 꽂는게 우선이다. 멀티탭이 비어있다면 주어진 순서에 따라 전자제품을 멀티탭에 꽂는다. 만일 꽂으려는 전자제품이 이미 멀티탭에 꽂혀있다면 전자..
[백준] 1080번 행렬 - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/1080 1080번: 행렬 첫째 줄에 행렬의 크기 N M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 행렬 A가 주어지고, 그 다음줄부터 N개의 줄에는 행렬 B가 주어진다. www.acmicpc.net 문제 2개의 행렬이 같아질 수 있게 첫번째 행렬의 임의의 3x3 구역을 1 -> 0, 0 -> 1로 바꿔주어 같게만들어주는것이 목표다. 임의의 3x3 구역을 바꿔주는것을 연산이라 한다. 입력 첫번째 줄 => N: 행렬의 세로 길이, M: 행렬의 가로 길이 두번째 줄 => 세로 길이가 N이고 가로길이가 M인 2개의 행렬들이 주어진다. 출력 두 행렬이 같다면 사용된 연산의 최솟값 출력 두 행렬이 같지않다면 -1 출..
[백준] 1969번 DNA - 파이썬
·
백준/그리디
https://www.acmicpc.net/problem/1969 1969번: DNA DNA란 어떤 유전물질을 구성하는 분자이다. 이 DNA는 서로 다른 4가지의 뉴클레오티드로 이루어져 있다(Adenine, Thymine, Guanine, Cytosine). 우리는 어떤 DNA의 물질을 표현할 때, 이 DNA를 이루는 뉴클레오 www.acmicpc.net 풀이 Hamming Distance는 길이가 같은 두 DNA가 있을 때, 각 위치의 뉴클오티드 문자가 다른 것의 수이다. 이 문제에서 뉴클오티드 문자는 A, T, G, C 만 주어진다. Hamming Distance가 최소가 되는 문자를 찾으려면 가장 각 위치의 문자는 겹치는 부분이 적어야한다. 특히 문제에 나왔듯이 만약 겹치는 개수가 동일한 문자가 두..
개발자 성현
'그리디' 태그의 글 목록