본문 바로가기

코딩 테스트/leetcode23

Baseball Game 첫번째 코드 하나하나 따져가면서 문제를 풀면 간단하다!"이런 경우 ~ 이렇게 함수 적용"이라는 느낌으로 if 문을 사용하면 된다.이때 모두 문자열이므로 정수로 바꾸어 넣는 것에 유의한다. class Solution:     def calPoints(self, operations: List[str]) -> int:         score = []         for i in operations:             if i == '+':                 score.append(score[-1] + score[-2])             elif i == 'C':                 score.pop()             elif i == 'D':                .. 2024. 8. 5.
Deepest Leaves Sum 첫번쨰 코드 트리 class를 다루는 경우는 처음이어서,gpt에게 설명을 들으면서 코드를 적어나갔다. 여기서 정리할 것은, 주어진 트리는 TreeNode 클래스를 사용하여 정의- 트리의 각 노드는 val이라는 값- 왼쪽 자식 노드를 가리키는 left- 오른쪽 자식 노드를 가리키는 right 코드 자체는 BFS를 이용하여 작성하였다.root를 시작으로 해당 값을 더한 후left나 right가 있으면 다시 넣은 후, sum을 다시 0으로 만드는 과정을 반복한다. 만약에 left나 right가 더 이상 아무것도 없으면해당 값은 마지막 leave로 가장 깊은 node가 될 것이다. # Definition for a binary tree node. class TreeNode:     def __init__(sel.. 2024. 8. 2.
Find Target Indices After Sorting Array 첫번째 코드 먼저 순서대로 정렬을 한 후에target값과 동일한 경우 해당 인덱스를 가져오는 코드를 작성한다. class Solution:     def targetIndices(self, nums: List[int], target: int) -> List[int]:         answer = []         nums.sort()         index = 0                  for i in nums:             if i == target:                 answer.append(index)             index += 1                  return answer 통과링크https://github.com/ornni/leetcode/t.. 2024. 7. 29.
Top K Frequent Elements 첫번째 코드 먼저 문제를 보고 든 생각은 딕셔너리를 이용해야겠다! 라는 생각이었다.하지만 딕셔너리를 많이 사용해보지 않아서 GPT의 도움을 살짝 받았다!! 그리고 value의 수가 가장 큰 k개를 뽑으려고 했는데, 이때 heapq를 이용하는 것이 좋다는 GPT의 추천이 있어이를 적용해보았다. import heapq class Solution:     def topKFrequent(self, nums: List[int], k: int) -> List[int]:         count_dict = {}         for i in nums:             if i not in count_dict.keys():                 count_dict[i] = 1             els.. 2024. 7. 19.
Delete Greatest Value in Each Row 보호되어 있는 글 입니다. 2024. 7. 15.
Number of Good Pairs 첫번째 코드 원소들을 비교해서 같은 경우 answer += 1을 하는 방법으로 정답을 구한다. class Solution:     def numIdenticalPairs(self, nums: List[int]) -> int:         answer = 0         for i in range(len(nums)):             for j in range(i+1, len(nums)):                 if nums[i] == nums[j]:                     answer += 1         return answer 통과링크https://github.com/ornni/leetcode/tree/main/1512-number-of-good-pairs leetcod.. 2024. 7. 12.
728x90