최신 글
-
Leetcode 200. Number of Islands
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Number of Islands 등급: Medium 내용: '1'(땅)과 '0'(물)의 지도를 나타내는 m x n 2D 이진 grid가 주어지면 섬의 수를 반환합니다. 섬 (1로 형성)은 물(0)로 둘러싸여 있으며 인접한 토지를 수평 또는 수직으로 연결하여 형성됩니다. grid의 네 모서리는 모두 물로 둘러싸여 있다고 가정할 수 있습니다. 도저히 안 풀려서 discussion보고 거의 베낀 푼 코드 class Solution(object): def numIslands(self, grid): if n..
2022.02.28
-
Leetcode 171. Excel Sheet Column Number 파이썬
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: 171. Excel Sheet Column Number 등급: Easy 내용: Excel Sheet Column Number, AAA, A, BC, 이런 column을 숫자로 변환해서 반환해라. class Solution(object): def titleToNumber(self, columnTitle): # ord(A) =65 # add up to the answer column_number = 0 # go through the string i = 1 for letter in columnTitle[..
2022.02.23
-
Leetcode 441. Arranging Coins - 파이썬
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Arranging Coins 등급: Easy 내용: n coin이 주어지는데 그것으로 계단을 만들어라. 마지막 계단층에 충분한 코인이 없다면, 그 계단은 제외하고 총 몇 개의 계단이 있는가? class Solution(object): def arrangeCoins(self, n): # iterative solution # ans is for number of rows ans = 0 row = 1 while n > 0: n -= row # add one more space to the row row ..
2022.02.20
-
Leetcode 258. Add Digits - Python
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Add Digits 등급: Easy 내가 적고 엄청 느린 코드 class Solution(object): def addDigits(self, num): if num = 10: prev = 0 while num > 0 : prev += num % 10 num = num // 10 num = prev return num 우선, 숫자가 10보다 작으면 바로 그대로 반환하도록 했다. 그 후, 만약 숫자가 10보다 클 경우, 숫자를 10으로 나눠서 남는 값,..
2022.02.13
-
Leetcode 27. Remove Element Python
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Remove Element 등급: Easy 내용: class Solution(object): def removeElement(self, nums, val): if not nums: return 0 while val in nums: nums.remove(val) return len(nums) 약간의 편법이 들어간 코드이다. 원래는, 그 element를 없애고 난 뒤의 남은 것들만 list가 있다면 그 남아있는 숫자를 줘야한다. 아, 그 없애는 것이 아닌 원래 다른 값으로 교체?를 하는 것이다. 그런데..
2022.02.11
-
Leetcode 14. Longest Prefix
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Longest Prefix 등급: EASY class Solution(object): def longestCommonPrefix(self, strs): if len(strs) == 1: return strs[0] #find the shortest string length = len(strs[0]) shortest = strs[0] for string in strs: if len(string) < length: length = len(string) shortest = string # iterate t..
2022.02.09
-
Leetcode: 13. Roman to Integer - Python
요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Roman to Integer 등급: Easy 내용: 로마 숫자를 일반 숫자로 바꾼다. class Solution(object): def romanToInt(self, s): answer = 0 i = 0 s = s[::-1] while i < len(s): if s[i] == 'I': answer += 1 i += 1 continue if s[i] == 'V': answer +=5 i += 1 if i < len(s) and s[i] == 'I': answer -= 1 i += 1 continue..
2022.02.08