Algorithm13 [ Leetcode ] Hard / Median of Two Sorted Arrays ''' 7:31 ~ 7:45 input: arr, arr output: float 두 개의 arr 합치고 1) 홀수일 경우: 2) 짝수일 경우: ''' class Solution: def findMedianSortedArrays(self, nums1: List[int], nums2: List[int]) -> float: narr = nums1 + nums2 narr.sort() arr_len = len(narr) index = arr_len // 2 if arr_len % 2 == 0: # 짝수 return (narr[index - 1] + narr[index]) / 2 else: # 홀수 return narr[index] 2022. 8. 11. [ Leetcode ] Easy / Two Sum 문제 정수 배열들이 주어지고, 더해져서 특정 타겟에 해당하는 정수로 만드는 두개의 숫자 인덱스들을 반환합니다. 각각의 입력이 정확히 하나의 해를 가질 수 있다고 가정합니다. 같은 요소를 두 번 사용할 수 없습니다. class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: for i in range(len(nums) - 1): for j in range(i+1, len(nums)): sum_ = nums[i] + nums[j] if sum_ == target: result = [i, j] return result 2022. 8. 11. [ Leetcode ] Medium / Longest Substring Without Repeating Characters class Solution: def lengthOfLongestSubstring(self, s: str) -> int: if len(s) == 0: return 0 if len(s) == 1: # " " return 1 arr_length = [] # 길이를 담을 배열 for i in range(len(s)): # 0, 1, 2, 3, 4, 5, 6, 7 arr = [] arr.append(s[i]) if i == len(s) - 1: break else: for j in range(i+1, len(s)): if s[j] not in arr: # 중복되지 않는다면 arr.append(s[j]) else: # 중복 된다면 break print(arr) arr_length.append(len(arr)) # .. 2022. 8. 4. [ BOJ ] 9084 / 동전 t = int(input()) for _ in range(t): coin_num = int(input()) # 동전의 가지 수 arr = list(map(int, input().split())) arr.insert(0, 0) result = int(input()) dp = [[0] * (result + 1) for i in range(coin_num + 1)] # 2차원 배열 생성 for i in range(coin_num + 1): dp[i][0] = 1 # result = 0을 만들 수 있는 가지수는 무조건 1 for j in range(1, coin_num + 1): # 화폐의 종류의 개수 for i in range(1, result + 1): # 찾고자 하는 돈 # j 행을 j-1행으로 updat.. 2022. 8. 3. 이전 1 2 3 4 다음