본문 바로가기

파이썬25

회의실 배정(그리디) 인프런 김태원님의 파이썬 알고리즘 문제풀이 강의를 듣고 작성한 글입니다. https://inf.run/Uiep 파이썬 알고리즘 문제풀이 (코딩테스트 대비) - 인프런 | 강의 파이썬을 이용한 코딩테스트 문제풀이를 합니다., - 강의 소개 | 인프런... www.inflearn.com 고민을 했는데 가장 빨리 끝나는 회의를 계속 먼저 잡으면 될것 같다는 생각을 했으나 코드가 깔끔하게 나오지않아서 강의를 봤다. #강의 풀이 n = int(input()) meeting = [] for i in range(n): s, e = map(int, input().split()) meeting.append((s, e)) meeting.sort(key=lambda x: (x[1], x[0])) print(meeting) .. 2022. 3. 26.
마구간 정하기 (결정알고리즘, 이분탐색) 인프런 김태원님의 파이썬 알고리즘 문제풀이를 듣고 작성한 글입니다. https://inf.run/Uiep 파이썬 알고리즘 문제풀이 (코딩테스트 대비) - 인프런 | 강의 파이썬을 이용한 코딩테스트 문제풀이를 합니다., - 강의 소개 | 인프런... www.inflearn.com 후... 어렵다. 문제들이 다 비슷한데 머릿속 생각을 코드구현하기가 쉽지않아서 강의를 봤다. #강의 풀이 def Count(len): cnt = 1 ep = Line[0] for i in range(1, n): if Line[i]-ep >= len: cnt += 1 ep = Line[i] return cnt n, c = map(int, input().split()) Line = [] for _ in range(n): tmp = i.. 2022. 3. 24.
랜선자르기 (결정알고리즘, 이분탐색) 인프런 김태원님의 파이썬 알고리즘 문제풀이를 듣고 작성한 글입니다. https://inf.run/Uiep 파이썬 알고리즘 문제풀이 (코딩테스트 대비) - 인프런 | 강의 파이썬을 이용한 코딩테스트 문제풀이를 합니다., - 강의 소개 | 인프런... www.inflearn.com #내 풀이 k, n = map(int, input().split()) a = [] for i in range(k): a.append(int(input())) start = max(a)//2 while True: cnt = 0 for x in a: cnt += x//start if cnt == n: break elif cnt > n: start += 1 else: start -= 1 print(start) 내 방식대로 문제를 풀어봤.. 2022. 3. 24.
사과나무 (다이아몬드) 인프런 김태원님의 파이썬 알고리즘 문제풀이를 듣고 작성한 글입니다. https://inf.run/Uiep 파이썬 알고리즘 문제풀이 (코딩테스트 대비) - 인프런 | 강의 파이썬을 이용한 코딩테스트 문제풀이를 합니다., - 강의 소개 | 인프런... www.inflearn.com 내가 이런 배열문제, 별찍기 문제에 약한것 같다. 고민 하고 방법이 잘 떠오르지 않아 강의를 봤다. #강의 풀이 n = int(input()) a = [list(map(int,input().split())) for _ in range(n)] res = 0 s = e = n//2 for i in range(n): for j in range(s, e+1): res += a[i][j] if i < n//2: s -= 1 e += 1 e.. 2022. 3. 23.
수의 구간 합 인프런 김태원 강사님의 파이썬 알고리즘 문제풀이를 듣고 작성한 글입니다. https://inf.run/Uiep 파이썬 알고리즘 문제풀이 (코딩테스트 대비) - 인프런 | 강의 파이썬을 이용한 코딩테스트 문제풀이를 합니다., - 강의 소개 | 인프런... www.inflearn.com 이 문제를 15~20분 정도 고민했는데 접근방식은 맞았던거 같은데 답이 잘 나오지 않아서 강의를 봤다. #내 풀이 n, m = map(int, input().split()) arr = list(map(int, input().split())) start = 0 end = 0 sum = 0 cnt = 0 while start < n and end < n: if start == end: sum = arr[start] if sum .. 2022. 3. 22.
두 리스트 합치기 인프런 김태원 강사님의 파이썬 알고리즘 문제풀이를 듣고 작성한 글입니다. https://inf.run/Uiep 파이썬 알고리즘 문제풀이 (코딩테스트 대비) - 인프런 | 강의 파이썬을 이용한 코딩테스트 문제풀이를 합니다., - 강의 소개 | 인프런... www.inflearn.com 나는 이 문제를 정말 단순한 문제로 생각했다. #내 풀이 n = int(input()) arr1 = list(map(int, input().split())) m = int(input()) arr2 = list(map(int, input().split())) arr3 = arr1 + arr2 arr3.sort() for i in arr3: print(i, end = ' ') 그냥 각각 리스트로 받아서 합친후에, 파이썬 내장함수.. 2022. 3. 22.