백준(Python) 풀이 477

백준(Python) 2960번 에라토스테네스의 체 풀이

Python으로 구현한 2960번 에라토스테네스의 체 문제 풀이입니다. https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net n, k = map(int, input().split()) data = [True for i in range(n + 1)] count = 0 for i in range(2, len(data) + 1) : for j in range(i, n+1, i) : if data[j] : data[j] = False count += 1 if count == k : print(j) break 초기에 n개의 data 리스트의 값들..

백준(Python) 2480번 주사위 세개 풀이

Python으로 구현한 2480번 주사위 세개 문제 풀이입니다. https://www.acmicpc.net/problem/2480 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net a, b, c = map(int, input().split()) if a == b == c : print(10000 + a * 1000) elif a == b : print(1000 + a * 100) elif a == c : print(1000 + a * 100) elif b == c : print(1000 + b *..

백준(Python) 2953번 나는 요리사다 풀이

Python으로 구현한 2953번 나는 요리사다 문제 풀이입니다. https://www.acmicpc.net/problem/2953 2953번: 나는 요리사다 "나는 요리사다"는 다섯 참가자들이 서로의 요리 실력을 뽐내는 티비 프로이다. 각 참가자는 자신있는 음식을 하나씩 만들어오고, 서로 다른 사람의 음식을 점수로 평가해준다. 점수는 1점부터 5 www.acmicpc.net sum_value = [] for _ in range(5) : sum_value.append(sum(map(int, input().split()))) print(sum_value.index(max(sum_value))+1, max(sum_value)) 각 참가자들이 받은 점수들의 합을 sum_value 리스트에 할당한다. 최종적으로..

백준(Python) 5565번 영수증 풀이

Python으로 구현한 5565번 영수증 문제 풀이입니다. https://www.acmicpc.net/problem/5565 5565번: 영수증 첫째 줄에 10권의 총 가격이 주어진다. 둘째 줄부터 9개 줄에는 가격을 읽을 수 있는 책 9권의 가격이 주어진다. 책의 가격은 10,000이하인 양의 정수이다. www.acmicpc.net total = int(input()) data = [] for _ in range(9) : data.append(int(input())) print(total - sum(data)) 첫째 줄에 10권의 총 가격을 입력받고 둘째 줄부터 9개 줄에는 가격을 읽을 수 있는 책 9권의 가격을 입력받아 리스트 data에 할당한다. 최종적으로 10권의 총 가격(total)에서 data..

백준(Python) 10162번 전자레인지 풀이

Python으로 구현한 10162번 전자레인지 문제 풀이입니다. https://www.acmicpc.net/problem/10162 10162번: 전자레인지 3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 www.acmicpc.net t = int(input()) if t % 10 != 0 : print(-1) else : a = t // 300 b = (t%300) // 60 c = (t%300) % 60 // 10 print(a, b, c) 입력받은 t를 10으로 나눈 값이 0이 아닐 경우 제시된 3개의 버튼으로 t초를 맞출 수 없으므로 -1을 출력하..

백준(Python) 10610번 30 풀이

Python으로 구현한 10610번 30 문제 풀이입니다. https://www.acmicpc.net/problem/10610 10610번: 30 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한 www.acmicpc.net n = list(input()) n.sort(reverse = True) sum = 0 for i in n : sum += int(i) if sum % 3 != 0 or "0" not in n : print(-1) else : print(''.join(n)) 이 문제는 30의 배수가 되는 가장 큰 수를 구하는 문제로, 30의 배수가 되려면 ..

백준(Python) 1977번 완전제곱수 풀이

Python으로 구현한 1977번 완전제곱수 문제 풀이입니다. https://www.acmicpc.net/problem/1977 1977번: 완전제곱수 M과 N이 주어질 때 M이상 N이하의 자연수 중 완전제곱수인 것을 모두 골라 그 합을 구하고 그 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 완 www.acmicpc.net import math m = int(input()) n = int(input()) result = [] for i in range(m, n + 1) : if int(math.sqrt(i)) ** 2 == i : result.append(i) if result : print(sum(result)) print(min(re..

백준(Python) 6588번 골드바흐의 추측 풀이

Python으로 구현한 6588번 골드바흐의 추측 문제 풀이입니다. https://www.acmicpc.net/problem/6588 6588번: 골드바흐의 추측 각 테스트 케이스에 대해서, n = a + b 형태로 출력한다. 이때, a와 b는 홀수 소수이다. 숫자와 연산자는 공백 하나로 구분되어져 있다. 만약, n을 만들 수 있는 방법이 여러 가지라면, b-a가 가장 큰 www.acmicpc.net import sys num = 1000001 data = [True for _ in range(num)] for i in range(2, int((num-1)**0.5) + 1) : if data[i] : for j in range(i + i, num, i) : data[j] = False while Tru..

백준(Python) 2576번 홀수 풀이

Python으로 구현한 2576번 홀수 문제 풀이입니다. https://www.acmicpc.net/problem/2576 2576번: 홀수 7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지 www.acmicpc.net data = [0] * 8 h = [] for i in range(7) : data[i] = int(input()) if data[i] % 2 != 0 : h.append(data[i]) if h : h.sort() print(sum(h)) print(h[0]) else : print(-1) 자연수를 하나씩 총 7개의 ..

백준(Python) 1550번 16진수 풀이

Python으로 구현한 1550번 16진수 문제 풀이입니다. https://www.acmicpc.net/problem/1550 1550번: 16진수 첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다. www.acmicpc.net n = int(input(), 16) print(n) 16진수 수를 입력받아 10진수로 변환하여 출력한다.