[TIL 5일차] 데브코스 데이터엔지니어링

heering·2023년 4월 14일
0

TIL 5일차

🙂 ChatGPT 특강

  • 웹 상에 존재하는 문서들이 훈련 데이터로 활용된다. (Unsupervised Learning)
  • Word Embedding 사용, Word Completion & Code Completion 두 가지 모델을 제공.
  • GPT에게 질문을 할 때 구체적으로, 답변의 부족한 점을 지속적으로 물어보기.
  • 거짓말도 잘하니까 Fact Checking 하면서 잘 활용하기.

🤗 1주차 끝!

오늘도 역시 예전에 풀었던 코딩테스트 문제들이다. 다음 주는 파이썬으로 웹다루기 주간이다.

  • 더 맵게
import heapq

def solution(scoville, K):
    answer = 0
    
    h = []
    for x in scoville:
        heapq.heappush(h, x) # 최소힙
    
    while (h[0] < K):
        if(len(h) > 1):
            heapq.heappush(h, heapq.heappop(h) + heapq.heappop(h) * 2)
        else:
            return -1
        answer += 1
    
    return answer
  • 여행경로
from collections import defaultdict

def solution(tickets):
    answer = []
    v = defaultdict(list)

    def DFS(x):
        while v[x]:
            DFS(v[x].pop(0))
        
        if not v[x]:
            answer.append(x)
            return

    for i, j in tickets:
        v[i].append(j)
    for i, j in v.items():
        v[i].sort()

    DFS('ICN')

    return list(reversed(answer))
  • N으로 표현
def solution(N, number):
    s = [set() for x in range(8)]
    for i, x in enumerate(s, start=1):
        x.add(int(str(N)*i))

    for i in range(0, len(s)):
        for j in range(0, i):
            for op1 in s[j]:
                for op2 in s[i-j-1]:
                    s[i].add(op1+op2)
                    s[i].add(op1-op2)
                    s[i].add(op1*op2)
                    if op2 != 0:
                        s[i].add(op1 // op2)
        if number in s[i]:
            answer = i+1
            break
        else:
            answer = -1

    return answer

0개의 댓글