분류 전체보기
-
[준비운동 PART1. 튼튼한 기본기] 소수(2581번)🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/💛 백준 2021. 7. 2. 11:04
1. 문제 설명 https://www.acmicpc.net/problem/2581 2. 나의 풀이 (1) 테스트케이스는 다 맞았으나 틀렸다고 나온 코드 m = int(input()) n = int(input()) def primeList(x): sieve = [True] * x y = int(x ** 0.5) for i in range(2, y+1): if sieve[i] == True: for j in range(i+i, x, i): sieve[j] = False return [i for i in range(2, x) if sieve[i] == True] m_list = set(primeList(m)) n_list = set(primeList(n)) answer_list = list(set(n_list..
-
[준비운동 PART1. 튼튼한 기본기] 최대공약수와 최소공배수(2609번)🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/💛 백준 2021. 7. 1. 23:47
1. 문제 설명 https://www.acmicpc.net/problem/2609 2. 나의 풀이 a, b = map(int, input().split()) # 유클리드 호제법, 최대공약수 구하기 def GCD(x, y): while(y): x,y = y, x%y return x # 최소공배수 구하기 def LCM(x, y): result = (x*y)//GCD(x,y) return result print(GCD(a, b)) print(LCM(a, b)) 유클리드 호제법이란? x, y의 최대공약수는 y, r의 최대공약수와 같다는 것을 이용한 방법이다. (x%y = r) 즉, 계속해서 x에 y를 대입하고 y에는 r(x%y)을 대입하다보면, 언젠가는 r(x%y)이 0일 때가 있다. 나머지의 값이 0일 때의 ..
-
[준비운동 PART1. 튼튼한 기본기] 일곱난쟁이(2309번)🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/💛 백준 2021. 7. 1. 21:21
1. 문제 설명 https://www.acmicpc.net/problem/2309 2. 나의 풀이 from itertools import combinations answer = [] heights = [] for _ in range(9): heights.append(int(input())) combis = list(combinations(heights, 7)) for combi in combis: if combi[0] + combi[1] + combi[2] + combi[3] + combi[4] + combi[5] + combi[6] == 100: answer = list(combi) break answer.sort() for i in range(len(answer)): print(answer[i])
-
[준비운동 PART1. 튼튼한 기본기] 지능형 기차 2(2460번)🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/💛 백준 2021. 7. 1. 20:39
1. 문제설명 https://www.acmicpc.net/problem/2460 2. 나의 풀이 people = dict() answer = 0 peopleBus = [0 for _ in range(10)] for i in range(10): n, m = map(int, input().split()) people[i] = [n, m] for i in range(len(people)): peopleBus[i] = peopleBus[i-1] - people[i][0] peopleBus[i] += people[i][1] answer = max(peopleBus) print(answer)
-
[준비운동 PART1. 튼튼한 기본기] 피보나치 수 5(10870번)🧠𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺/💛 백준 2021. 7. 1. 20:34
1. 문제설명 https://www.acmicpc.net/problem/10870 2. 나의 풀이 n = int(input()) nums = [0 for _ in range(n+1)] for i in range(n+1): if n == 0: nums[i] = 0 break if i == 0: nums[i] = 0 if i == 1: nums[i] = 1 else: nums[i] = nums[i-2] + nums[i-1] print(nums[-1])